我有以下查询,它返回发布商的所有分组销售
SELECT
publisher_name,
SUM(sales) AS sales,
SUM(comission) AS comission,
SUM(sale_total) AS publisher_total_sale
FROM reports_summary
GROUP BY publisher_name
ORDER BY publisher_total_sale DESC
输出
-------------------------------------------------------------------------------
+ publisher_name + | + sales + | + commission + | publisher_total_sale_count +
-------------------------------------------------------------------------------
+ some publisher + | 254,12 + | + 12,23 + | 15 +
-------------------------------------------------------------------------------
+ publisher2 + | 123 + | + 23 + | 12 +
-------------------------------------------------------------------------------
我想要什么
另一列在本例中给出了 sum(publisher_total_sale_count)
27。
+
有可能吗?我该怎么做?
最佳答案
您可以在子查询中计算它,然后使用交叉联接将其带入主查询中:
SELECT
publisher_name,
SUM(sales) AS sales,
SUM(comission) AS comission,
SUM(sale_total) AS publisher_total_sale,
sumOfTotalSales
FROM reports_summary,
(SELECT Sum(Sales_total) as sumOfTotalSales FROM reports_summary) as subTotalSales
GROUP BY publisher_name, sumOfTotalSales
ORDER BY publisher_total_sale DESC
要在 GUI 而不是 SQL 编辑器中执行此操作,您可以创建一个新查询来执行此处子查询正在执行的操作 SELECT Sum(Sales_total) as sumOfTotalSales FROM reports_summary
然后将其带入您的主查询并确保两个表之间没有连接。
关于mysql - 如何通过一个mysql查询得到总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26018459/