SQL使用WITH ROLLUP子句计算每个分组的合计值
2023-12-18 15:36:47
?先来看一个示例的SQL查询语句,假设我们有一个名为t_sales的表,记录了销售订单的信息,包括订单日期、销售额等字段。我们想要按照订单日期进行分组,并计算每天的销售总额和总订单数,同时还希望得到整体的销售总额和订单数。
SELECT IFNULL(order_date, '总计') AS '日期', SUM(sales_amount) AS '销售总额', COUNT(*) AS '订单数' FROM t_sales GROUP BY order_date WITH ROLLUP;
它会在结果集中额外添加一行,用于显示每个分组的合计值。
例如,假设t_sales表中有以下数据:
order_date | sales_amount |
---|---|
2023-01-01 | 1000 |
2023-01-01 | 2000 |
2023-01-02 | 1500 |
2023-01-02 | 2500 |
执行上述查询后,我们将得到以下结果:
日期 | 销售总额 | 订单数 |
---|---|---|
2023-01-01 | 3000 | 2 |
2023-01-02 | 4000 | 2 |
总计 | 7000 | 4 |
可以看到,查询结果中添加了一行“总计”,显示了整体的销售总额和订单数。
?
文章来源:https://blog.csdn.net/EaSoNgo111/article/details/135056972
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!