Funkcja IIF SQL Server

Funkcja IIF SQL Server

Instrukcje warunkowe są znaczącym elementem konstrukcyjnym w programowaniu. W tym poście dowiemy się, jak korzystać z funkcji IIF () na serwerze SQL, aby dodać funkcjonalność IF-ELSE do zapytań SQL.

Funkcja SQL Server IIF ()

Poniższy fragment kodu pokazuje składnię funkcji:

IIF (Boolean_Expression, true_value, false_value)

Funkcja akceptuje trzy główne argumenty:

  1. Wyrażenie logiczne - definiuje prawidłowe oceniane wyrażenie logiczne. Jeśli nie jest prawidłowym wyrażeniem logicznym, funkcja zwróci błąd.
  2. prawdziwa wartość - ustawia wartość do zwrócenia, jeśli wyrażenie oceni True.
  3. false_values - odnosi się do wartości zwróconej, jeśli wyrażenie boolean oceni do fałszywych.

Przykład 1

Poniżej pokazuje proste użycie funkcji IIF ().

Deklaruj @var int = 100, @var_2 int = 10;
Wybierz [największy] = iif (@var> @var_2, @var, @var_2);

Powyższe zapytanie porównuje dwie wartości i zwraca wartość maksymalną. Przykładem jest to, jak pokazano:

największy |
-------+
100 |

Przykład 2 - Używanie funkcji IIF () o wartości nie -tyłkowej

Poniższy przykład używa funkcji IIF () z wyrażeniem innym niż. Zmusza to funkcję do zwrócenia błędu, jak pokazano poniżej:

Deklaruj @var int = 100, @var_2 int = 10;
Wybierz [największy] = iif (null, @var, @var_2);

Wyjście:

Błąd SQL [4145] [S0001]: Wyrażenie typu nie-bolejnego określonego w kontekście, w którym oczekuje się warunku, w pobliżu „(”.

Przykład 3 - za pomocą funkcji IIF () z wartościami zerowymi

Poniższy przykład używa funkcji IIF () z wartościami zerowymi.

Deklaruj @var int = null, @var_2 int = null;
Wybierz [największy] = iif (@var> @var_2, @var, @var_2);

To powinno zwrócić Null jako:

największy |
-------+
|

Wniosek

Ten krótki samouczek obejmuje funkcję IIF () na serwerze SQL. Ta funkcja zapewnia skrótową składnię dla funkcji przypadku.