Quali sono le alternative per implementare la seguente query:
select *
from table
where isExternal = @type = 2 ? 1 : 0
Quali sono le alternative per implementare la seguente query:
select *
from table
where isExternal = @type = 2 ? 1 : 0
Risposte:
In SQL Server 2012 è possibile utilizzare la IIFfunzione :
SELECT *
FROM table
WHERE isExternal = IIF(@type = 2, 1, 0)
Nota anche: in T-SQL, l'operatore di assegnazione (e confronto) è solo =(e non ==- è C #)
BETWEENoperatore è definito per accettare tre argomenti. Quello che stavi cercando era un operatore condizionale , che sembra essere l'unico operatore definito per accettare tre argomenti definiti dalla maggior parte delle lingue.