Funzione SQL Server IIF

Funzione SQL Server IIF

Le dichiarazioni condizionali sono un elemento significativo nella programmazione. In questo post, impareremo come utilizzare la funzione IIF () in SQL Server per aggiungere funzionalità IF-ELSE alle query SQL.

Funzione sql server iif ()

Il seguente frammento di codice mostra la sintassi della funzione:

Iif (boolean_expression, true_value, false_value)

La funzione accetta tre argomenti principali:

  1. Boolean_expression - definisce un'espressione booleana valida che viene valutata. Se non un'espressione booleana valida, la funzione restituirà un errore.
  2. vero valore - imposta il valore da restituire se l'espressione valuta su true.
  3. false_values - si riferisce al valore restituito se l'espressione booleana valuta a false.

Esempio 1

Di seguito mostra un semplice utilizzo della funzione iif ().

dichiarare @var int = 100, @var_2 int = 10;
Seleziona [più grande] = iif (@var> @var_2, @var, @var_2);

La query sopra confronta i due valori e restituisce il valore massimo. Un output di esempio è come mostrato:

più grande |
-------+
100 |

Esempio 2 - Utilizzo della funzione IIF () con valore non booleano

L'esempio seguente utilizza la funzione IIF () con un'espressione non booleana. Ciò costringe la funzione a restituire un errore come illustrato di seguito:

dichiarare @var int = 100, @var_2 int = 10;
Seleziona [più grande] = iif (null, @var, @var_2);

Produzione:

Errore SQL [4145] [S0001]: un'espressione di tipo non booleano specificato in un contesto in cui è prevista una condizione, vicino a "(".

Esempio 3 - Utilizzo della funzione IIF () con valori null

L'esempio seguente utilizza le funzioni IIF () con i valori null.

dichiarare @var int = null, @var_2 int = null;
Seleziona [più grande] = iif (@var> @var_2, @var, @var_2);

Questo dovrebbe restituire null come:

più grande |
-------+
|

Conclusione

Questo breve tutorial copre la funzione IIF () in SQL Server. Questa funzione fornisce una sintassi abbreviata per la funzione del caso.