簡體   English   中英

LEFT JOIN不適用於count

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM