繁体   English   中英

将 ROLLUP 与 COUNT DISTINCT 一起使用

[英]Using ROLLUP with COUNT DISTINCT

在使用ROLLUP时使用COUNT(DISTINCT column_name)时遇到问题。 当我在没有ROLLUP的情况下运行查询时,一切看起来都是正确的,但是当我这样做时,汇总值仅适用于每个 GROUP BY 的不同值,而不是总和。 我意识到我可以使用子查询来获取总数; 但是,主要查询非常大,因此我希望找到另一种解决此问题的方法。 有任何想法吗?

查询示例: SELECT COUNT(DISTINCT column1) FROM table GROUP BY column2 WITH ROLLUP

这是一种在select本身中使用concat解决此问题的 hacky 方法。 用户forpas提供了一个不起作用的边缘案例。 仅当您的数据没有出现此类问题时才使用它

SELECT COUNT(DISTINCT CONCAT(column1, column2))
FROM table 
GROUP BY column2 WITH ROLLUP;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM