php - 带计数的 mysql 汇总

标签 php mysql sql linux

我在计数列上陷入了 mysql ROLLUP 困境。你能指导一下吗?

我写了以下 mysql 查询

查询:

 SELECT (SELECT store.StoreName from store 
          WHERE store.storeOwnerId=redeem.StoreNo)
             AS CompanyName,
        (SELECT mscheme.SchemeName from mscheme 
          WHERE mscheme.SchemeNo = redeem.SchemeNo)
             AS SchemeName,
 count(*) AS Count  
 FROM kirana_app.redeem GROUP BY redeem.SchemeNo 
 ORDER BY CompanyName;

** 输出 **

 CompanyName,SchemeName, Count
'Dwarkesh', 'September-saffola', '25'
'Dwarkesh', 'September-Tea', '20'
'Nitin stores', 'Testing Scheme', '1'
'Nitin stores', 'September-Parle', '63'

我需要像计数列一样进行汇总

输出如下:

 CompanyName,SchemeName, Count
'Dwarkesh', 'September-saffola', '25'
'Dwarkesh', 'September-Tea', '20'
 **Dwarkesh', NULL, '45'**
'Nitin stores', 'Testing Scheme', '1'
'Nitin stores', 'September-Parle', '63'
 **'Nitin stores', NULL, '64**'

最佳答案

学习进行正确的连接而不是子查询。

SELECT s.StoreName AS CompanyName,
m.SchemeName AS SchemeName,
COUNT(*) AS Count
FROM redeem r
INNER JOIN store s ON r.StoreNo = s.storeOwnerId
INNER JOIN mscheme m ON m.SchemeNo = r.SchemeNo
GROUP BY s.CompanyName, m.SchemeNo 
WITH ROLLUP;

ORDER BY 是由 GROUP BY 隐式完成的。

关于php - 带计数的 mysql 汇总,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26008591/

相关文章:

java - JPA同步问题,需要重新启动应用程序

mysql - 使用子查询一次更新 mysql 表中的所有行

PHP/MySQL 登录 -> 每个客户的模式

java - 没有值从 php 返回到 android 应用程序

javascript - 无法获取 API 以在 jQuery 中显示数据

mysql - 慢插入mysql

php - 使用动态生成的表单更新记录

sql - PostgreSQL 分组依据和总和

mysql - 如何获取mysql中缺失的行

php - zf2.如何处理循环 cli 脚本中 mysql 连接的超时?