Função IIF do servidor SQL

Função IIF do servidor SQL

Declarações condicionais são um bloco de construção significativo na programação. Nesta postagem, aprenderemos a usar a função IIF () no SQL Server para adicionar a funcionalidade if-else às consultas SQL.

Função sql server iif ()

O snippet de código a seguir mostra a sintaxe da função:

Iif (boolean_expression, true_value, false_value)

A função aceita três argumentos principais:

  1. Boolean_expression - define uma expressão booleana válida que é avaliada. Se não for uma expressão booleana válida, a função retornará um erro.
  2. valor real - Define o valor a ser retornado se a expressão é avaliada como true.
  3. false_values - refere -se ao valor retornado se a expressão booleana avaliar para falsa.

Exemplo 1

A seguir, mostra um uso simples da função iif ().

declarar @var int = 100, @var_2 int = 10;
selecione [Maior] = IIF (@var> @var_2, @var, @var_2);

A consulta acima compara os dois valores e retorna o valor máximo. Um exemplo de saída é como mostrado:

Maior |
-------+
100 |

Exemplo 2 - Usando a função iif () com valor não -booleano

O exemplo abaixo usa a função iif () com uma expressão não-booleana. Isso força a função a retornar um erro conforme descrito abaixo:

declarar @var int = 100, @var_2 int = 10;
selecione [Maior] = IIF (null, @var, @var_2);

Saída:

Erro SQL [4145] [S0001]: uma expressão do tipo não-booleano especificado em um contexto em que uma condição é esperada, próxima '('.

Exemplo 3 - Usando a função iif () com valores nulos

O exemplo abaixo usa as funções iif () com valores nulos.

declarar @var int = null, @var_2 int = null;
selecione [Maior] = IIF (@var> @var_2, @var, @var_2);

Isso deve retornar nulo como:

Maior |
-------+
|

Conclusão

Este curto tutorial abrange a função iif () no servidor SQL. Esta função fornece uma sintaxe abreviada para a função de caso.