我需要在sql中连接两个表,并且我需要找到表a中有多少客户id也在表b中找到,提取表b中每年也购买了多少客户id。我的问题如下:
SELECT
a.year, count(distinct(a.id),
count (distinct(b.id)
FROM
purchase as A,
purchase2 as B
WHERE
(a.id=b.id)
AND
a.year>2010
GROUP BY a.year
是这样吗?我需要在select语句中包含count(distinct(b.id))吗?我是否也需要按b.year分组?
提前感谢您的帮助
2条答案
按热度按时间kyvafyod1#
更改distinct,可以进行内部联接以确保:
ruoxqz4g2#
我想
union all
聚合是最好的方法。从每个id/年的信息开始:然后按年度汇总: