语法
DECODE(value,value1,result1, value2,result2, value3,result3,… , result)
函数说明
类似于 CASE value WHEN value1 THEN result1,唯一区别是如果 value 为 null 值,
可以和后面的 null 值匹配。
示例
示例 1:没有匹配的 value 值,返回值为 result。
gbase> SELECT DECODE(5,1,10,2,20,3,30,4,40, 50) FROM t;
+-----------------------------------+
| DECODE(5,1,10,2,20,3,30,4,40, 50) |
+-----------------------------------+
| 50 |
+-----------------------------------+
1 row in set
示例 2:value 为表达式,与 value1 匹配,返回值为 result1。
gbase> SELECT DECODE( (2 * 5) ,10,100,20,200,600) FROM t;
+-------------------------------------+
| DECODE( (2 * 5) ,10,100,20,200,600) |
+-------------------------------------+
| 100 |
+-------------------------------------+
1 row in s