Ich habe kürzlich von der Verfügbarkeit von IIF
Funktionen in SQL Server 2012 erfahren . Ich verwende CASE
in meinen Abfragen immer verschachtelte Funktionen . Ich möchte den genauen Zweck der wissen IIF
Aussage und wann sollten wir verwenden lieber IIF
über CASE
Statement in der Abfrage. Ich verwende meistens verschachtelt CASE
in meinen Abfragen.
Danke für alle Eingaben.
sql-server
sql-server-2012
case
iif
Neophyt
quelle
quelle
Antworten:
IIF
ist das gleiche wieCASE WHEN <Condition> THEN <true part> ELSE <false part> END
. Der Abfrageplan ist derselbe. Es ist vielleicht "syntaktischer Zucker", wie ursprünglich implementiert.CASE ist auf allen SQL-Plattformen portierbar, während IIF SQL SERVER 2012+ -spezifisch ist.
quelle
IIF ist eine nicht standardmäßige T-SQL-Funktion. Es wurde zu SQL SERVER 2012 hinzugefügt, damit Access auf SQL Server migrieren kann, ohne die IIFs zuvor in CASE umgestalten zu müssen. Sobald die Access-Datenbank vollständig in SQL Server migriert ist, können Sie sie umgestalten.
quelle