Pergunta: Como utilizar OR em um CASE do SQL Server?
Resposta: Sim, usando um case de pesquisa.
Neste post vamos ver uma pergunta feita por um dos meus amigos em uma entrevista sobre como usar OR condição em um CASE do SQL Server.
Para entender melhor o que é um case devemos saber que um CASE SQL Server retorna um ou múltiplos resultados de uma condição.
Existe CASE em duas formas em resumo:
A expressão CASE SIMPLES compara uma expressão com um conjunto de expressões simples para determinar o resultado.
A expressão CASE DE PESQUISA avalia um conjunto de expressões booleanas para determinar o resultado.
Ambos os formatos suportam um argumento ELSE opcional.
Mãos à obra:
Um CASE simples verifica uma expressão contra valores múltiplos. Dentro de uma instrução SELECT, uma expressão CASE simples permite apenas uma verificação de igualdade; Não são feitas outras comparações. Uma expressão CASE simples funciona comparando a primeira expressão com a expressão em cada cláusula WHEN para equivalência. Se essas expressões forem equivalentes, a expressão na cláusula THEN será retornada.
DECLARE @Valor INT SET @Valor = 7 SELECT CASE @Valor WHEN 2 THEN 'Dois' WHEN 7 THEN 'Sete' WHEN 5 THEN 'Cinco' ELSE 'Outro Valor' END
Uma expressão CASE de pesquisa permite operadores de comparação e o uso de AND e / ou OR entre cada expressão booleana. A expressão CASE simples verifica apenas os valores equivalentes e não pode conter expressões booleanas. A sintaxe básica para uma expressão CASE de pesquisa é mostrada abaixo:
DECLARE @Valor INT SET @Valor = 7 SELECT CASE WHEN @Valor >=3 THEN 'Top 7' ELSE 'Outro Valor' END
Saiba como a função UPPER() no SQL Server pode degradar a performance das suas consultas…
Saiba agora mesmo como você pode diminuir o RESOURCE_SEMAPHORE_QUERY_COMPILE no SQL Server. Recentemente eu trabalhei em…
Nós DBA' e desenvolvedores quase sempre temos que trabalhar com datas quando se trata de…
Quais são as diferentes maneiras de proteger o login Senha do Administrador (SA)? Todos estão…
Com os direitos que o login sa tem por padrão no SQL Server, é obrigatório…
Como um DBA, você tem a responsabilidade de garantir a segurança do aplicativo e dos…