Quais são as alternativas para implementar a seguinte consulta:
select *
from table
where isExternal = @type = 2 ? 1 : 0
sql-server
tsql
Anthony
fonte
fonte
BETWEEN
operador é definido para receber três argumentos. O que você estava procurando era um operador condicional - que por acaso é o único operador definido para receber três argumentos definidos pela maioria das linguagens.Respostas:
Use
case
:fonte
No SQL Server 2012 , você pode usar a
IIF
função :Observe também: no T-SQL, o operador de atribuição (e comparação) é apenas
=
(e não==
- é C #)fonte