oracle中case when 示例
时间: 2023-12-29 22:26:11 浏览: 91
以下是Oracle中使用CASE WHEN的示例:
1. 简单的CASE表达式:
```sql
SELECT CASE column_name
WHEN value1 THEN result1
WHEN value2 THEN result2
ELSE result3
END
FROM table1;
```
2. 检索的CASE表达式:
```sql
SELECT CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END
FROM table1;
```
3. 作为条件判断的COUNT和SUM:
```sql
SELECT COUNT(CASE WHEN AGE = 18 THEN '18岁的学生个数' END) EIGHTEEN,
COUNT(CASE WHEN AGE = 19 THEN '19岁的学生个数' END) NINETEEN
FROM "PeopleInfo";
```
相关问题
oracle case when示例
Oracle的CASE WHEN语句是一种条件表达式,常用于SQL查询中,可以根据指定的条件返回不同的值。下面是一个基本的示例:
```sql
SELECT column_name,
CASE
WHEN condition_1 THEN result_1
WHEN condition_2 THEN result_2
ELSE default_result
END as new_column
FROM table_name;
```
在这个例子中:
- `column_name`是要处理的数据列名。
- `condition_1` 和 `condition_2` 是判断条件,如果满足某个条件,会返回对应的`result_1` 或 `result_2`。
- 如果所有条件都不满足,则会返回`default_result`。
例如,如果你有一个销售订单表,你想计算每个订单的状态(新、已发货、已完成),你可以这样做:
```sql
SELECT order_id,
CASE
WHEN status = 'New' THEN '待处理'
WHEN status = 'Shipped' THEN '已发货'
WHEN status = 'Completed' THEN '已完成'
ELSE '未知状态'
END AS order_status
FROM sales_orders;
```
oracle case when 语法示例
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之间,级别为"中级",否则为"初级"。
阅读全文