平成23年度 春期 データベーススペシャリスト試験 午前II 問6
2025年6月30日
【問題6】
次のSQL文によって"会員"表から新たに得られる表はどれか。
【解説】
このSQL文の動作を以下のステップで解説します。
- GROUP BY グループ
“会員"表を"グループ"列でグループ化します。グループごとの行は以下のようになります:
- グループA: 会員番号003(年齢60)
- グループB: 会員番号001, 005(年齢20, 40)
- グループC: 会員番号002, 004, 006(年齢30, 40, 50)
- HAVING COUNT(*) > 1
グループ内の行数が1より大きいものだけを残します。これにより、以下のグループが残ります:
- SELECT AVG(年齢)
各グループの年齢の平均を計算します:
- グループB: (20 + 40) / 2 = 30
- グループC: (30 + 40 + 50) / 3 = 40
最終的に得られる表は以下の通りです:
【答え】
ウ: SELECT AVG(年齢) FROM 会員 GROUP BY グループ HAVING COUNT(*) > 1
出典:平成23年度 春期 データベーススペシャリスト試験 午前II 問6