【发布时间】:2014-08-31 17:56:05
【问题描述】:
从 UX 移出post
我有 2 个查询,每个查询都有汇总..
SELECT DATE(date) AS day,
COUNT(IF(name = 'red', 1, NULL)) AS "red",
COUNT(IF(name = 'blue', 1, NULL)) AS "blue",
COUNT(IF(name = 'yellow', 1, NULL)) AS "yellow"
FROM test1
GROUP BY day with rollup
SELECT DATE(date) AS day,
COUNT(*) AS total
FROM test2
GROUP BY day with rollup
当加入他们时,rollup 行被删除,所以我通过使用另一个查询来解决它,计算 rollup 和 union 它到结果的末尾
这是一个现场演示 [sqlfiddle],关于我这样做的任何想法(如最佳实践或性能),如果有办法在加入后保留rollup,我不知道。任何指针表示赞赏。
更新
我想要的正确结果集是小提琴中的结果。每行包含一天的摘要,从第一次查询项目/颜色数到第二次查询当天的请求数。汇总将是每个项目/颜色和请求的分类总数。希望我说清楚:)
【问题讨论】:
-
你需要什么结果集?每行有什么?汇总行中应该包含什么?
-
@OllieJones 请查看更新后的帖子 :) 谢谢
标签: mysql inner-join rollup