[英]LEFT JOIN doesn't work with count
我的查詢有問題:
SELECT table1.Name,
COUNT(*)
FROM table1
LEFT JOIN table2 ON table2.Name_all = table1.Name
GROUP BY table1.Name
它顯示並計算來自table1的名稱。 我想加入來自table2的所有名稱,這些名稱在table1中不存在。
也許有人知道我在做什么錯?
提前致謝
從您的描述中,您似乎的意思是這個,這是與table1名稱不匹配的name_all列表。
SELECT table2.Name_all
FROM table2
LEFT JOIN table1 ON table2.Name_all = table1.Name
WHERE table1.Name Is Null
如果還需要計數,則可以說:
SELECT table2.Name_all, Count(table2.Name_all) AS CountOf
FROM table2
LEFT JOIN table1 ON table2.Name_all= table1.Name
WHERE table1.Name Is Null
GROUP BY table2.Name_all;
嘗試這個
該查詢將從表1和表2中獲取公用名。還將從表2中獲取表1中沒有的公用名。
SELECT table1.Name,
table2.Name,
COUNT(*)
FROM table2
LEFT JOIN table1
ON table2.Name_all = table1.Name
GROUP BY table1.Name, table2.Name
讓我看看是否可行。
我會做一個簡單in
檢查
SELECT table1.Name,
FROM table1
WHERE table1.Name In (SELECT table2.Name_all FROM table2)
GROUP BY table1.Name
還有其他方法,但是如果沒有更多信息,這是一種簡單的方法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.