MySQL中使用SUM函数带条件的用法
在MySQL中,SUM
函数是一个聚合函数,用于计算数值列的总和。如果你想要在使用SUM
函数时加上条件,可以使用CASE WHEN
语句或者IF
函数。
以下是使用SUM
函数和条件的两种方法:
- 使用
CASE WHEN
语句:
SELECT SUM(CASE WHEN condition THEN expression ELSE 0 END) AS alias_name
FROM table_name;
- 使用
IF
函数(MySQL 5.5及以上版本支持):
SELECT SUM(IF(condition, expression, 0)) AS alias_name
FROM table_name;
这里的condition
是你的条件表达式,expression
是你想要求和的表达式或字段。
例如,如果你想要计算employees
表中所有员工的工资总和,但只计算那些年龄大于30岁的员工的工资,你可以这样写:
SELECT SUM(CASE WHEN age > 30 THEN salary ELSE 0 END) AS total_salary
FROM employees;
或者使用IF
函数:
SELECT SUM(IF(age > 30, salary, 0)) AS total_salary
FROM employees;
这两个查询都会返回年龄大于30岁的员工的工资总和。
评论已关闭