I recently came to know about the availability of IIF
function in SQL Server 2012. I always use nested CASE
in my queries. I want to know the exact purpose of the IIF
statement and when should we prefer using IIF
over CASE
Statement in the query. I mostly use nested CASE
in my queries.
Thanks for all the inputs.
SQL Server IIF() FunctionThe IIF() function returns a value if a condition is TRUE, or another value if a condition is FALSE.
IIF is a shorthand way for writing a CASE expression. It evaluates the Boolean expression passed as the first argument, and then returns either of the other two arguments based on the result of the evaluation.
IIF
is the same as CASE WHEN <Condition> THEN <true part> ELSE <false part> END
. The query plan will be the same. It is, perhaps, "syntactical sugar" as initially implemented.
CASE is portable across all SQL platforms whereas IIF is SQL SERVER 2012+ specific.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With