クエリに問題があります:
SELECT table1.Name,
COUNT(*)
FROM table1
LEFT JOIN table2 ON table2.Name_all = table1.Name
GROUP BY table1.Name
table1の名前を表示してカウントします。table1に存在しないtable2のすべての名前を結合したい。
多分誰かが私が間違っていることを知っていますか?
前もって感謝します
クエリに問題があります:
SELECT table1.Name,
COUNT(*)
FROM table1
LEFT JOIN table2 ON table2.Name_all = table1.Name
GROUP BY table1.Name
table1の名前を表示してカウントします。table1に存在しないtable2のすべての名前を結合したい。
多分誰かが私が間違っていることを知っていますか?
前もって感謝します
あなたの説明から、あなたはこれを意味しているようです。これは、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;
次に簡単なin
チェックをします
SELECT table1.Name,
FROM table1
WHERE table1.Name In (SELECT table2.Name_all FROM table2)
GROUP BY table1.Name
他の方法もありますが、これ以上の情報がなければ、これは簡単な方法です。
これを試して
このクエリは、テーブル 1 とテーブル 2 から一般的な名前を取得します。また、テーブル 1 にない名前をテーブル 2 から取得します。
SELECT table1.Name,
table2.Name,
COUNT(*)
FROM table2
LEFT JOIN table1
ON table2.Name_all = table1.Name
GROUP BY table1.Name, table2.Name
これが機能するかどうか教えてください。