Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come si eseguono più condizioni CASE WHEN utilizzando SQL Server 2008?

Esistono due formati di espressioni maiuscole . Puoi fare CASE con molti WHEN come;

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

Oppure un semplice CASE espressione

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

Oppure CASE dentro CASE come;

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