sum(case when then else end)
时间: 2023-04-27 08:05:44 浏览: 67
SUM(CASE WHEN ... THEN ... ELSE ... END) 是 SQL 中的一种结构化查询语言 (SQL) 的语法,用于在查询中进行条件判断,并对符合条件的数据进行求和。
其中,CASE 后面是条件语句,THEN 后面是条件成立时的结果,ELSE 后面是条件不成立时的结果,END 表示结束。
例如:
```
SELECT SUM(CASE WHEN age > 18 THEN salary ELSE 0 END) as total_salary
FROM employees
```
这个查询会求出所有年龄大于 18 岁的员工的工资之和。
相关问题
sql查询统计35到50之间的人数用sum (case when then else end)
假设表名为 `person`,其中有一个 `age` 列表示年龄,可以使用以下 SQL 语句查询统计年龄在 35 到 50 之间的人数:
```
SELECT SUM(CASE WHEN age BETWEEN 35 AND 50 THEN 1 ELSE 0 END) AS count
FROM person;
```
解释:
- `CASE WHEN age BETWEEN 35 AND 50 THEN 1 ELSE 0 END` 表示如果年龄在 35 到 50 之间,则返回 1,否则返回 0。
- `SUM` 函数对所有符合条件的人数进行求和。
- `AS count` 表示将结果列命名为 `count`。
mysql case when then返回sum
你可以使用 MySQL 中的 CASE WHEN THEN 语句来返回 SUM 值。以下是一个示例查询,将根据条件对不同的行进行求和:
```sql
SELECT
SUM(CASE
WHEN condition1 THEN column
WHEN condition2 THEN column
ELSE 0
END) AS sum_value
FROM your_table;
```
在上面的查询中,你需要将 "condition1" 和 "condition2" 替换为你自己的条件,"column" 替换为你想要求和的列名,"your_table" 替换为你要从中检索数据的表名。SUM 函数将根据条件对符合条件的行进行求和,并将结果命名为 "sum_value"。
请注意,你可以根据实际需求添加更多的条件和列。这只是一个基本示例。