我有兩個表廣播串列和聯系人(廣播串列的外鍵)。我想在聯系人表中顯示廣播串列表的所有記錄和廣播串列ID 的計數。
我的查詢:-
SELECT b.id, count(c.broadcastlist_id)as Recepients,b.name
from Broadcastlists b
LEFT JOIN Contacts c ON b.id = c.broadcastlist_id
group by c.broadcastlist_id;
廣播名單:
ID | 姓名 |
---|---|
1 | 測驗 1 |
2 | 測驗 2 |
3 | 測驗 4 |
4 | 測驗 5 |
聯系人:
ID | 姓名 | 廣播串列_id |
---|---|---|
1 | 拉胡爾 | 2 |
2 | 曼西 | 1 |
3 | 尼沙 | 2 |
4 | 尼迪 | 2 |
5 | 普拉尚 | 1 |
我想要這樣的輸出
ID | 姓名 | 收件人(計數) |
---|---|---|
1 | 測驗 1 | 2 |
2 | 測驗 2 | 3 |
3 | 測驗 3 | 0 |
4 | 測驗 4 | 0 |
但是,輸出是這樣的,只顯示左表中的一個空記錄我想要左表中的所有空資料
ID | 姓名 | 收件人(計數) |
---|---|---|
1 | 測驗 1 | 2 |
2 | 測驗 2 | 3 |
3 | 測驗 3 | 0 |
uj5u.com熱心網友回復:
您分組到了錯誤的列。嘗試這個:
SELECT b.id, b.name, COUNT(c.broadcastlist_id) AS Recepients
FROM Broadcastlists b
LEFT JOIN Contacts c ON b.id = c.broadcastlist_id
GROUP BY b.id, b.name;
輸出
ID | 姓名 | 收件人 |
---|---|---|
1 | 測驗 1 | 2 |
2 | 測驗 2 | 3 |
3 | 測驗 4 | 0 |
4 | 測驗 5 | 0 |
看到這個db<>fiddle。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/491960.html
上一篇:合并1列行相同的資料