mysql - 如何通过一个mysql查询得到总和

标签 mysql sum

我有以下查询,它返回发布商的所有分组销售

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/

相关文章:

php - 获取数组并插入到不同的数据库中。插入字符串中增加变量?

mysql - 检查重复行尚不存在

c# - 是否可以选择一列的总和,按另一列分组?

mysql - 如何将一个字段的总和与另一个字段的总和进行比较?

MySQL UPDATE SET 字段等于 SELECT

mysql - SQL 选择与复杂插入

基于 round(1 + rand() * x) 的 MySQL 查找产生 NULL 和多个结果

php - MySQL:计算具有特定日期的列中所有数字的总和

php - 如何在mysql中对所有结果求和

ruby - 在 Ruby 中定义求和函数