我的查询有问题:
SELECT table1.Name,
COUNT(*)
FROM table1
LEFT JOIN table2 ON table2.Name_all = table1.Name
GROUP BY table1.Name
它显示并计算table1中的名称。我想加入table2中不存在于table1中的所有名称。
也许有人知道我做错了什么?
提前致谢
答案 0 :(得分:1)
根据您的描述,您似乎就是这个,这是一个与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 :(得分:0)
试试这个
此查询将从表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
如果有效,请告诉我。
答案 2 :(得分:0)
我会做一个简单的in
检查
SELECT table1.Name,
FROM table1
WHERE table1.Name In (SELECT table2.Name_all FROM table2)
GROUP BY table1.Name
还有其他方法,但没有更多信息,这是一个简单的方法t