最近IIF、SQL Server2012での関数の可用性について知りましたCASE。クエリでは常にネストを使用しています。IIFステートメントの正確な目的と、クエリでステートメントよりも使用IIFする方がよい場合を知りたいのですがCASE。私は主CASEにクエリでネストを使用します。
すべての入力に感謝します。
最近IIF、SQL Server2012での関数の可用性について知りましたCASE。クエリでは常にネストを使用しています。IIFステートメントの正確な目的と、クエリでステートメントよりも使用IIFする方がよい場合を知りたいのですがCASE。私は主CASEにクエリでネストを使用します。
すべての入力に感謝します。
回答:
IIFと同じCASE WHEN <Condition> THEN <true part> ELSE <false part> ENDです。クエリプランは同じになります。おそらく、最初に実装された「シンタックスシュガー」です。
CASEはすべてのSQLプラットフォーム間で移植可能ですが、IIFはSQL SERVER2012 +固有です。
IIFは非標準のT-SQL関数です。これはSQLSERVER 2012に追加されたため、事前にIIFをCASEにリファクタリングすることなくAccessをSQLServerに移行できました。AccessデータベースがSQLServerに完全に移行されたら、リファクタリングできます。