【发布时间】:2017-04-20 22:17:54
【问题描述】:
我正在尝试将三个单独的查询合并为一个,但仍会产生相同的结果,但只是作为一个表。 ColumnA 和 ColumnB 实际上都是 'yyyy-mm-dd' 的日期格式,理想情况下,最终结果将只是一列日期和每个查询的单独计数。
select columnA, count(*)
from data.table
where timestamp between '2017-01-01' and '2017-01-07'
group by columnA
select columnB, count(*)
from data.table
where timestamp between '2017-01-01' and '2017-01-07'
group by columnB
select columnB, count(distinct columnC)
from data.table
where timestamp between '2017-01-01' and '2017-01-07'
and columnX in ('itemA','ItemB')
group by columnB
【问题讨论】:
-
看起来像
UNION ALL的教科书用例 -
虽然经过反思,我认为 Gordon 理解得更好。