With a case expression it is possible to specify a conditional value. Depending on the result of one or more conditional expressions the case expression can return different values.
A CASE expression can be in one of the following two forms:
Example:CASE WHEN col1 < 10 THEN 1 WHEN col1 >= 10 THEN 2 ELSE 3 END
Example:CASE col1 WHEN 0 THEN NULL WHEN -1 THEN -999 ELSE col1 END
- If one or more search-conditions are true, then the result of the CASE expression is the result of the first (left-most) WHEN clause which has a search-condition that is true.
- If none of the search-conditions are true, then the result of the CASE expression is the result of the explicit or implicit ELSE clause.
- If no ELSE clause is specified then ELSE NULL is implicit.
- At least one result in a CASE expression must express a value different from NULL.
See Result Data Types for a description of how the data type of the result of the CASE expression is determined.
Upright Database Technology AB
Voice: +46 18 780 92 00
Fax: +46 18 780 92 40