オリジナル模擬試験1 問40

“社員”表と“部門”表に対し,次のSQL文を実行した時の結果はどれか。

SELECT COUNT(*) FROM 社員,部門
  WHERE 社員.所属=部門.部門名 AND 部門.フロア=2
40.gif

  • 1
  • 2
  • 3
  • 4
正解 問題へ
分野:テクノロジ系
中分類:データベース
小分類:データ操作
まずWHERE句にあるように、社員表と部門表を所属列と部門名列をキー列として結合します。結合処理を行うとフロア列が追加された次のような中間表になります。
40_1.gif
そして結合された表中でフロア列の値が"2"である行(部門.フロア=2)の数を、COUNT(*)で集計しています。下表で示すようにフロア列の値が"2"の行は3行あるので、SQL文を実行した結果は 3 になります。
40_2.gif

Pagetop