首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL有效且正确地链接GROUP BY结果

问MySQL有效且正确地链接GROUP BY结果
EN

Stack Overflow用户
提问于 2012-11-27 20:20:24
回答 1查看 52关注 0票数 1

有没有一些有效的方法来编写查询,将组的不同结果连接到一个公共表上?MySQL如何处理subGROUP上聚集函数的合并结果与原始表中的完整字段?

我正在使用这个,而且它很慢(除了CONDITION=1,我还需要其他条件)

代码语言:javascript
复制
SELECT a.CID,a.AS_ALL,b.AS_ACTIVE FROM 
            (SELECT CID,COUNT(DISTINCT RAID) AS AS_ALL FROM MYTABLE GROUP BY CID) a
            LEFT JOIN
            (SELECT CID,COUNT(DISTINCT RAID) AS AS_ACTIVE FROM MYTABLE WHERE CONDITION=1 GROUP BY CID ) b ON a.CID=b.CID;

另外,使用像这样的东西也很节省吗??MySQL是否总是正确地将COLUMN_A与聚合结果合并?

代码语言:javascript
复制
SELECT  COLUMN_A COUNT(DISTINCT COLUMN_A), SUM(COLUMN_A),SUM(COLUMN_B) FROM ATABLE WHERE CONDITION=1 GROUP BY COLUMN_C 

感谢您的建议

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-27 21:28:31

试试这个:

代码语言:javascript
复制
SELECT CID,COUNT(DISTINCT RAID) AS AS_ALL,SUM(IF(CONDITION=1, 1, 0)) AS AS_ACTIVE 
FROM MYTABLE GROUP BY CID
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13584137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档