oracle decode 多条件
时间: 2023-09-13 12:08:23 浏览: 115
在 Oracle 中,我们可以使用 DECODE 函数进行多条件的判断和操作。DECODE 函数的语法如下:
```
DECODE(expression, search1, result1, search2, result2, ..., default)
```
其中,`expression` 是要进行判断的表达式,`search1, search2, ...` 是多个条件,`result1, result2, ...` 是与条件对应的结果,`default` 是指定的默认结果。
DECODE 函数会按照顺序依次进行条件判断,如果找到了与 `expression` 匹配的条件,则返回对应的结果;如果没有找到匹配的条件,则返回默认结果。
下面是一个 DECODE 函数多条件的示例:
```
SELECT name, DECODE(score,
90, 'A',
80, 'B',
70, 'C',
'D') AS grade
FROM student;
```
在这个示例中,我们以 `score` 字段的值为条件,进行多条件的判断。如果 `score` 的值为 90,则返回 A;如果 `score` 的值为 80,则返回 B;如果 `score` 的值为 70,则返回 C;否则返回 D。最终结果会在 `name` 和 `grade` 两个字段中显示出来。
需要注意的是,DECODE 函数只能进行等值判断,如果需要进行其他类型的判断,需要使用 CASE 表达式。
阅读全文