Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment créer plusieurs conditions CASE WHEN à l'aide de SQL Server 2008 ?

Il existe deux formats d'expression de cas . Vous pouvez faire CASE avec beaucoup de WHEN comme ;

CASE  WHEN Col1 = 1 OR Col3 = 1  THEN 1 
      WHEN Col1 = 2 THEN 2
      ...
      ELSE 0 END as Qty

Ou un CASE simple expression

CASE Col1 WHEN 1 THEN 11 WHEN 2 THEN 21 ELSE 13 END

Ou CASE dans CASE comme ;

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