2017-01-18 41 views
0

我有兩個轉錄表,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 
+0

謝謝!這是我正在尋找的。 – Daniel

0

你可以聯盟2個查詢到一起。

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 
+0

沿着這些線路......但是這個查詢似乎錯過了我想得到的人,例如,A_Transcript中有1個成績單,B_Transcript中有2個成績單。 – Daniel

相關問題