我有两个成绩单表,A_Transcript和B_Transcript,我想要一个查询,它将为我提供所有超过2个成绩单的用户(跨两个表)。谢谢!
如果我只有一个包含数据的表,那么这就是查询:
select user_Id, count(*) From A_Transcript
group by user_ID
having count(*) > 2;
答案 0 :(得分:1)
您需要在分组之前从两个表中获取完整的用户ID列表,并且您需要UNION ALL来执行非独特的联合:
SELECT user_Id, count(*)
FROM
(
SELECT user_Id
FROM A_Transcript a
UNION ALL
select user_Id
FROM B_Transcript b
) combined
GROUP BY user_Id
HAVING COUNT(*) >2
答案 1 :(得分:0)
您可以将两个查询合并在一起。
SELECT user_Id, count(*) FROM A_Transcript
GROUP BY user_ID
HAVING count(*) > 2
UNION
SELECT user_Id, count(*) FROM B_Transcript
GROUP BY user_ID
HAVING count(*) > 2