oracle case when 语法示例
时间: 2024-09-24 12:24:31 浏览: 56
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
Oracle的CASE WHEN语句用于在查询中进行条件判断和返回不同的结果。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
其中,condition1、condition2等是要进行判断的条件,result1、result2等是满足条件时返回的结果。如果没有任何条件满足,将返回ELSE后面指定的结果。
以下是一个示例:
```sql
SELECT column1, column2,
CASE
WHEN column3 = 'A' THEN 'Option 1'
WHEN column3 = 'B' THEN 'Option 2'
ELSE 'Default Option'
END AS result
FROM table;
```
在上述示例中,根据column3的值,返回不同的选项作为结果。
oracle case when instr
Oracle的CASE WHEN和INSTR函数可以一起使用来实现条件判断和字符串搜索。
CASE WHEN是一种条件语句,用于根据指定的条件执行不同的操作。语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
INSTR函数用于在字符串中搜索指定的子字符串,并返回子字符串第一次出现的位置。它的语法如下:
```
INSTR(string, substring, start_position, occurrence)
```
下面是一个示例,演示了如何使用CASE WHEN和INSTR函数来判断字符串中是否包含指定的子字符串:
```sql
SELECT column1,
CASE WHEN INSTR(column1, 'keyword') > 0 THEN '包含关键字'
ELSE '不包含关键字'
END AS result
FROM table1;
```
在上面的示例中,我们使用了INSTR函数来判断column1列中是否包含关键字'keyword',如果包含,则返回'包含关键字',否则返回'不包含关键字'。
阅读全文