DECODE

Purpose

The decode function returns the result value for which the expression, expr, matches the expression, search. If no match is found, NULL or − if specified − the default value is returned.

Syntax

decode::=

Usage Notes

  • Decode is similar to CASE, but has slightly different functionality (to be compliant to other databases):
    • The expression expr can be directly compared with value NULL (for example. DECODE( my_column,NULL,0,my_column)) •
    • String comparisons are done "non-padded" (hence, DECODE(my_column,'abc',TRUE,FALSE) on a CHAR(10) column always returns false).
  • Due to readability reasons we recommend to use CASE.

Example

SELECT DECODE('abc', 'xyz', 1, 'abc', 2, 3) DECODE;