oracle case when 语法示例
时间: 2024-09-24 19:24:31 浏览: 16
Oracle的CASE WHEN语句是一种条件选择表达式,它允许根据特定条件返回不同的值。以下是基本的语法示例:
```sql
SELECT column_name,
CASE
WHEN condition_1 THEN result_1
WHEN condition_2 THEN result_2
[ ELSE default_result ] -- 可选,默认值
END AS new_column_name
FROM table_name;
```
这里,`column_name`是你想要操作的列,`condition_1`, `condition_2`是你要判断的条件,如果满足条件,会返回相应的`result_1`或`result_2`。如果所有条件都不满足,可以使用`ELSE`关键字指定默认结果。
例如,假设我们有一个员工表,我们想按工资级别显示员工信息:
```sql
SELECT employee_id,
CASE
WHEN salary > 5000 THEN '高级'
WHEN salary > 3000 AND salary <= 5000 THEN '中级'
ELSE '初级'
END as salary_level
FROM employees;
```
在这个例子中,如果员工工资大于5000,他们的级别会被标记为"高级";如果工资在3000到5000之间,级别为"中级",否则为"初级"。
相关问题
oracle case when or
Oracle中的CASE WHEN语句提供了一种条件判断的方法,在不同的位置有不同的用法。在SELECT语句中,可以使用SELECT CASE WHEN来根据条件返回不同的值。在WHERE子句中,可以使用WHERE CASE WHEN来根据条件过滤数据。
下面是一些使用Oracle CASE WHEN语句的示例:
1. 简单CASE函数:
```
SELECT CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他'
END
FROM students;
```
2. CASE搜索函数:
```
SELECT CASE
WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他'
END
FROM students;
```
请注意,Oracle的CASE WHEN语句只在Oracle数据库中可用,而且不支持ANSI SQL标准语法。因此,如果你需要在不同的数据库中使用CASE WHEN语句,可能需要根据具体的数据库进行语法调整。
oracle case when包含
Oracle的CASE WHEN语句是一种条件表达式,它允许根据满足不同条件的情况下返回不同的结果。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
在这个语法中,可以根据需要指定多个WHEN条件和对应的结果。当满足某个条件时,对应的结果将被返回。如果没有任何条件满足,可以使用ELSE子句指定一个默认的结果。
下面是一个示例,展示了如何使用CASE WHEN语句:
```
SELECT
employee_id,
first_name,
last_name,
CASE
WHEN salary > 5000 THEN 'High'
WHEN salary > 3000 THEN 'Medium'
ELSE 'Low'
END AS salary_level
FROM
employees;
```
在这个示例中,根据员工的薪水不同,将其分为高、中、低三个级别,并将结果作为新的列salary_level返回。
希望以上信息对您有帮助!如果您有任何其他问题,请随时提问。