sql中case when用法
时间: 2023-10-26 15:46:34 浏览: 96
SQL中的CASE WHEN用法是一种条件表达式。它允许在SQL查询中进行条件逻辑操作,以便对结果进行不同的计算。通常情况下,CASE WHEN语句用于检查一组条件,并根据条件结果选择不同的输出结果。例如:
SELECT
CASE
WHEN age < 18 THEN 'underage'
WHEN age BETWEEN 18 AND 64 THEN 'adult'
ELSE 'elderly'
END as age_group
FROM users;
这个查询将根据用户的年龄分配他们到不同的年龄组中。如果用户年龄小于18岁,则分配到 "underage" 组,如果用户介于18岁和64岁之间,则分配到 "adult" 组,否则分配到 "elderly" 组。
相关问题
SQL中case when用法
在SQL中,`CASE WHEN` 是一个条件表达式,它用于根据一个或多个条件(`WHEN`)返回不同结果(`THEN`)。这个结构常用于数据转换、计算或简单的条件逻辑。其基本语法如下:
```sql
CASE
WHEN condition1 THEN result1
[WHEN condition2 THEN result2]
[ELSE default_result]
END
```
- `condition1`, `condition2`: 这些是布尔表达式,如果它们为真,则执行相应的`result1`或`result2`。
- `result1`, `result2`: 当条件满足时,返回的结果值。可以是常量、字段值或表达式。
- `ELSE`: 如果所有`WHEN`条件都不成立,执行此部分的代码,返回`default_result`。
例如,假设我们有一个销售表,我们可以使用`CASE WHEN`来计算每个订单的折扣金额:
```sql
SELECT
OrderID,
ProductName,
Amount,
CASE
WHEN DiscountPercent > 0 THEN Amount * (1 - DiscountPercent/100)
ELSE Amount
END AS DiscountedAmount
FROM Sales;
```
这里,如果`DiscountPercent`大于0,那么会计算折扣后的金额,否则保持原价。
sql 中case when 用法
在 SQL 中,CASE WHEN 是一种条件表达式,用于根据条件返回不同的值。其基本语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
```
其中,condition1、condition2 等是条件表达式,result1、result2 等是对应条件成立时返回的结果,default_result 是当所有条件都不成立时返回的默认结果。
例如,以下 SQL 语句将根据订单金额的大小返回不同的等级:
```
SELECT order_id, order_amount,
CASE WHEN order_amount >= 1000 THEN 'VIP'
WHEN order_amount >= 500 THEN 'Gold'
ELSE 'Regular'
END AS customer_level
FROM orders;
```
阅读全文