oracle 中decode函数
时间: 2023-10-28 17:57:31 浏览: 103
在 Oracle 数据库中,DECODE 函数用于实现条件判断和返回结果。它的基本语法如下:
```
DECODE(expr, search1, result1 [, search2, result2, ...] [, default])
```
在这里,`expr` 是要进行比较的表达式,`search1`、`search2` 等是需要与 `expr` 进行比较的值。如果 `expr` 等于某个 `search` 值,那么 DECODE 函数就会返回相应的 `result` 值。如果没有匹配到任何 `search` 值,且提供了 `default` 参数,则会返回该 `default` 值。
以下是一个使用 DECODE 函数的示例:
```
SELECT employee_name,
DECODE(job_id, 'IT_PROG', 'IT Department',
'SA_MAN', 'Sales Manager',
'SA_REP', 'Sales Representative',
'Other') AS job_category
FROM employees;
```
在这个示例中,根据员工的职位 ID (`job_id`) 来判断他们所属的职位类别,并将结果返回为 `job_category`。如果 `job_id` 为 'IT_PROG',则返回 'IT Department',如果为 'SA_MAN',则返回 'Sales Manager',如果为 'SA_REP',则返回 'Sales Representative',否则返回 'Other'。
DECODE 函数在 Oracle 数据库中非常常用,可以方便地进行条件判断和结果返回。
阅读全文