orcale case when 用法
时间: 2024-11-06 14:01:48 浏览: 12
oracle case when 语句的用法详解
5星 · 资源好评率100%
Oracle的CASE WHEN语句是一种条件表达式,用于在SQL查询中根据指定的条件返回不同的值或结果集。它的基本语法如下:
```sql
SELECT column1,
CASE
WHEN condition THEN result1
WHEN condition2 THEN result2
[ ... ]
ELSE default_result
END AS new_column
FROM table_name;
```
在这个结构中:
- `column1`是要操作的原始列。
- `condition`是一个布尔表达式,如果为真,则会执行紧跟其后的`result1`。
- 如果`condition1`不成立,系统会检查下一个`condition2`,依此类推。
- `default_result`是在所有条件都不满足时返回的默认值。
例如,如果你想计算某个字段基于另一个字段的值提供不同的折扣,你可以这样做:
```sql
SELECT customer_id,
product_price,
CASE
WHEN product_discount > 0 THEN product_price * (1 - product_discount / 100)
ELSE product_price
END AS discounted_price
FROM sales;
```
阅读全文