CASE ranking
WHEN 1 THEN 'alpha'
WHEN 2 THEN 'beta'
WHEN 10 THEN 'charlie'
ELSE 'zelta'
END CASE;
Możesz użyć jednego z wyrażeń, które ma WHEN, ale nie możesz ich mieszać.
1) KIEDY when_expressionJest prostym wyrażeniem, z którym input_expression jest porównywany, gdy używany jest prosty format CASE. when_expression to dowolne poprawne wyrażenie. Typy danych input_expression i każde when_expression muszą być takie same lub muszą być niejawną konwersją.
2) KIEDY Boolean_expressionJest wyrażeniem logicznym ocenianym przy użyciu przeszukiwanego formatu CASE. Boolean_expression to dowolne poprawne wyrażenie logiczne.
Możesz zaprogramować:
1)
CASE ProductLine
WHEN 'R' THEN 'Road'
WHEN 'M' THEN 'Mountain'
WHEN 'T' THEN 'Touring'
WHEN 'S' THEN 'Other sale items'
ELSE 'Not for sale'
2)
CASE
WHEN ListPrice = 0 THEN 'Mfg item - not for resale'
WHEN ListPrice < 50 THEN 'Under $50'
WHEN ListPrice >= 50 and ListPrice < 250 THEN 'Under $250'
WHEN ListPrice >= 250 and ListPrice < 1000 THEN 'Under $1000'
ELSE 'Over $1000'
END
Ale w każdym razie można się spodziewać, że ranking zmiennych będzie porównywany w wyrażeniu logicznym.
http://msdn.microsoft.com/en-us/library/ms181765 .aspx