oracle decode()
时间: 2024-08-21 08:00:48 浏览: 49
Oracle的DECODE()函数是一种条件表达式,类似于SQL Server的CASE语句,用于根据给定的条件返回一个预定义的值。它的基本语法如下:
```sql
DECODE(expression, value1, result1, [value2, result2], ..., [else_value, else_result])
```
其中:
- `expression` 是要测试的条件表达式。
- `value1`, `value2`, ... 是一系列的值,每个值对应一个结果。
- `result1`, `result2`, ... 分别是当`expression`等于`value1`、`value2`等时的返回结果。
- 如果所有`value`都不匹配,可以使用`else_value`来提供默认结果(`else_result`)。
例如,如果你想根据员工ID返回他们的职位名称:
```sql
SELECT employee_id,
DECODE(employee_id,
101, 'Manager',
201, 'Engineer',
301, 'Intern',
NULL) AS position
FROM employees;
```
这将返回每个员工的ID及其对应的职位,如果ID不在上述范围,则返回NULL。
相关问题
Oracle DECODE
Oracle DECODE是Oracle数据库中的一个函数,它可以根据给定的条件对数据进行转换。DECODE函数的语法如下:DECODE(expr,search1,result1,search2,result2,...,default)。其中,expr是要进行转换的表达式,search1、search2等是要匹配的值,result1、result2等是匹配成功后返回的结果,default是可选的,表示如果没有匹配成功则返回的默认值。DECODE函数可以用于多种场景,例如将某个字段的值转换为另一个值、根据条件返回不同的结果等。
oracle decode
The Oracle DECODE function is a conditional statement that evaluates a set of expressions and returns a value based on the first expression that is true. It can be used to perform simple if-then-else logic in SQL queries.
The syntax for the DECODE function is:
DECODE(expr, search1, result1, search2, result2, ..., default)
- expr: The expression to be evaluated.
- search1, search2, ...: The expressions to be compared against expr.
- result1, result2, ...: The value to be returned if the corresponding search expression matches expr.
- default: The value to be returned if no search expression matches expr.
For example, the following query uses DECODE to return 'Yes' if the quantity is greater than 10, 'No' if the quantity is less than 10, and 'Equal' if the quantity is exactly 10:
SELECT DECODE(quantity, 10, 'Equal', quantity > 10, 'Yes', 'No') AS result
FROM orders;
This will return a result set with a column named "result" that contains 'Yes', 'No', or 'Equal' for each row.
阅读全文