gpt4 book ai didi

sql - 通过SUM与Group By进行SQL查询

转载 作者:行者123 更新时间:2023-12-03 14:04:28 24 4
gpt4 key购买 nike

我无法使查询按我需要的方式工作。我有一个简单的查询,输出以下数据:

enter image description here

我需要的是总计每个月的total_reseller_sales,而不要两次显示同一个月。我尝试以下操作,但会引发错误

SELECT rs.resellerid, rs.sid, SUM(rs.total_reseller_sales), s.month, s.sid 
FROM sales_report_resellers rs
INNER JOIN resellers r ON rs.resellerid = r.resellerid
INNER JOIN sales_report s ON rs.sid = s.sid
WHERE (rs.sid > '294' AND rs.sid < '306') AND r.insidesales = 0
AND r.resellerid IN (7, 18, 22)
GROUP BY month

我得到的错误是SELECT中的每个元素都是无效的,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。

如果我将它们包括在GROUP BY中,那么我将得到相同的结果。

任何帮助,将不胜感激。

最佳答案

GROUP BY子句为您在该子句中指定的列的每个唯一组合形成行。

如果要显示每个月的总和,则仅在group by子句中包含s.month:例如

SELECT s.month, SUM(rs.total_reseller_sales)
FROM sales_report_resellers rs
INNER JOIN resellers r ON rs.resellerid = r.resellerid
INNER JOIN sales_report s ON rs.sid = s.sid
WHERE (rs.sid > '294' AND rs.sid < '306') AND r.insidesales = 0
AND r.resellerid IN (7, 18, 22)
GROUP BY s.month

如果您在select子句中包含转销商详细信息,并且还在group by子句中包含转销商详细信息,则每个转销商AND月会有一行

关于sql - 通过SUM与Group By进行SQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41816846/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com