同一テーブル、または別テーブルに重複したデータが存在していれば、
それを抽出するCSVリストを作成したいと考えております。
ID SEI MEI 010 山田 太郎 020 鈴木 敏夫 030 田中 哲男 040 山本 雅人 050 島田 次郎 060 斉藤 剛史 070 山田 太郎 080 大島 大輔 090 田中 哲男 100 斉藤 剛史 110 山田 太郎
例えば上記のようなテーブルがあった場合、
SEIとMEIが重複するIDを抽出して、どのIDとどのIDが重複しているかがわかるCSVにしたいので、
下記のような結果になるSQLを模索中です。
ID SEI MEI 重複ID 010 山田 太郎 070 010 山田 太郎 110 030 田中 哲男 090
070と090、110のIDも抽出するSQLであれば容易に考えられるのですが、
それらは重複IDの方に表示するの抽出したくないのです。
尚、070と090、110のIDを抽出するSQLは下記になります。
SELECT a.ID, a.SEI, a.MEI, b.ID AS 重複ID FROM TABLE_A a INNER JOIN TABLE_A b ON a.SEI = b.SEI AND a.MEI = b.MEI
これを実行すると、抽出結果は下記のようになります。
ID SEI MEI 重複ID 010 山田 太郎 070 010 山田 太郎 110 030 田中 哲男 090 070 山田 太郎 010 070 山田 太郎 110 090 田中 哲男 030 110 山田 太郎 010 110 山田 太郎 070
例えば、IDが070のところで重複IDが010として表示されていますが、
010と070が重複していることは、
IDが010のところで重複IDが070と表示されているので既に判明しています。
なので、 抽出したくないのです。
いいSQL文はないでしょうか?
追記
説明が不足していましたが、実際にはIDに付随する住所や電話番号等も抽出項目になります。
回答2件
あなたの回答
tips
プレビュー