“社員”表から同姓同名が存在する社員の氏名を抽出するSQL文はどれか。
社員
|
ア | SELECT 氏名 FROM 社員 GROUP BY 氏名 HAVING COUNT(*) > 1 |
イ | SELECT 氏名 FROM 社員 WHERE 氏名 = 氏名 |
ウ | SELECT 氏名 FROM 社員 WHERE 氏名 = 氏名 ORDER BY 氏名 |
エ | SELECT 氏名, COUNT(*) FROM 社員 GROUP BY 氏名 |
答え ア
【解説】
“社員”表から同姓同名の社員を探すには、社員表から同じ氏名のデータをまとめ(GROUP)、まとめた組のデータの件数が1より大きければ、2人以上の同姓同名の社員がいることになるので、これをSQL文にすると
SELECT 氏名 FROM 社員 GROUP BY 氏名 HAVING COUNT(*) > 1
(ア)になります。
【キーワード】
・SQL文