Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como faço várias condições CASE WHEN usando o SQL Server 2008?


Existem dois formatos de expressão de maiúsculas e minúsculas . Você pode fazer CASE com muitos WHEN Como;
CASE  WHEN Col1 = 1 OR Col3 = 1  THEN 1 
      WHEN Col1 = 2 THEN 2
      ...
      ELSE 0 END as Qty

Ou um CASE simples expressão
CASE Col1 WHEN 1 THEN 11 WHEN 2 THEN 21 ELSE 13 END

Ou CASE dentro CASE Como;
CASE  WHEN Col1 < 2 THEN  
                    CASE Col2 WHEN 'X' THEN 10 ELSE 11 END
      WHEN Col1 = 2 THEN 2
      ...
      ELSE 0 END as Qty