Mysql使用sum函数时的注意事项

本文介绍了MySQL中的SUM函数,包括如何计算记录中特定字段的总和,以及如何结合GROUP BY子句进行分组求和。通过具体例子展示了SUM函数在实际应用中的用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MySQL的SUM函数是用来找出记录中各种的字段的总和。

要了解SUM函数考虑EMPLOYEE_TBL表具有以下记录:


mysql> SELECT * FROM employee_tbl;
+——+——+————+——————–+
| id | name | work_date | daily_typing_pages |
+——+——+————+——————–+
| 1 | John | 2007-01-24 | 250 |
| 2 | Ram | 2007-05-27 | 220 |
| 3 | Jack | 2007-05-06 | 170 |
| 3 | Jack | 2007-04-06 | 100 |
| 4 | Jill | 2007-04-06 | 220 |
| 5 | Zara | 2007-06-06 | 300 |
| 5 | Zara | 2007-02-06 | 350 |
+——+——+————+——————–+
7 rows in set (0.00 sec)


现在,假设根据上面的表想来计算所有的dialy_typing_pages的总数,那么可以通过使用下面的命令:


mysql> SELECT SUM(daily_typing_pages)
-> FROM employee_tbl;
+————————-+
| SUM(daily_typing_pages) |
+————————-+
| 1610 |
+————————-+
1 row in set (0.00 sec)


可以使用GROUP BY子句设置的各种记录的总和。下面的例子将总结所有相关的记录一个人,打印纸的每一个人总数。


mysql> SELECT name, SUM(daily_typing_pages)
-> FROM employee_tbl GROUP BY name;
+——+————————-+
| name | SUM(daily_typing_pages) |
+——+————————-+
| Jack | 270 |
| Jill | 220 |
| John | 250 |
| Ram | 220 |
| Zara | 650 |
+——+————————-+
5 rows in set (0.17 sec)

获取SUM函数的返回值是BigDecimal类型

private long playCount(String advertise_id) {
    String sql = "select sum(play_count) from advertising_play_info where advertising_id = ?";
    Query query = getCurrentSession().createSQLQuery(sql);
    query.setString(0, advertise_id);
    BigDecimal bigDecimal = (BigDecimal) query.list().get(0);
    long playCount = bigDecimal.longValue();
    return playCount;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值