sum(case when then else end)
时间: 2023-04-27 12:05:44 浏览: 170
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`。
sql查询统计35到50之间的人数和小于35人数 和大于50人数用sum (case when then else end)
假设我们有一个名为“person”的表,其中包含“age”列,表示每个人的年龄。我们可以使用以下SQL查询来统计35到50之间的人数以及小于35岁和大于50岁的人数:
```
SELECT
SUM(CASE WHEN age >= 35 AND age <= 50 THEN 1 ELSE 0 END) AS '35-50',
SUM(CASE WHEN age < 35 THEN 1 ELSE 0 END) AS '<35',
SUM(CASE WHEN age > 50 THEN 1 ELSE 0 END) AS '>50'
FROM person;
```
解释一下上面的查询语句:
- 使用SUM函数对每个条件进行求和,以计算符合条件的人数。
- 使用CASE语句来确定每个人是否符合条件,并返回1或0。
- 使用AS关键字为每个条件指定一个别名。
希望这可以帮助你!
阅读全文