sum求和在mysql中如何实现

来源:这里教程网 时间:2026-02-28 20:12:16 作者:

在 MySQL 中,SUM() 是一个聚合函数,用于计算指定列的总和。它通常用在 SELECT 语句中,配合 GROUP BY、WHERE 等子句对数据进行统计汇总。

基本语法

SELECT SUM(列名) FROM 表名 [WHERE 条件];

该语句会返回指定列所有匹配行的数值总和。如果没有任何匹配行,SUM() 返回 NULL。

简单求和示例

假设有一张订单表 orders,结构如下:

id | product  | price
---|----------|-------
 1 | 手机     | 3000
 2 | 平板     | 2500
 3 | 手机     | 3200

要计算所有商品的总价:

SELECT SUM(price) AS total_price FROM orders;

结果为:8700

配合 WHERE 条件使用

如果只想计算特定条件下的总和,比如只计算“手机”的总价:

SELECT SUM(price) AS phone_total FROM orders WHERE product = '手机';

结果为:6200

结合 GROUP BY 分组求和

按商品类别分组,分别计算每类商品的总价格:

SELECT product, SUM(price) AS total FROM orders GROUP BY product;

结果:

product | total
--------|-------
手机    | 6200
平板    | 2500

注意事项

SUM() 只能用于数值类型的列(如 INT、DECIMAL)。 如果列中包含 NULL 值,SUM() 会自动忽略它们。 在没有匹配行时,SUM() 返回 NULL 而不是 0,可使用 IFNULL 或 COALESCE 处理: SELECT IFNULL(SUM(price), 0) AS total FROM orders WHERE product = '电脑';

这样当没有“电脑”记录时,返回 0 而不是 NULL。

基本上就这些,根据实际查询需求灵活组合条件和分组即可。

相关推荐