問65
頻出度★★☆
関係データベースの操作 a~c と,関係演算の適切な組合せはどれか。 a 指定したフィールド(列)を抽出する。 b 指定したレコード(行)を抽出する。 c 複数の表を一つの表にする。
この問題の解説と、これまでの解答の記録です。
関係データベースの操作 a~c と,関係演算の適切な組合せはどれか。 a 指定したフィールド(列)を抽出する。 b 指定したレコード(行)を抽出する。 c 複数の表を一つの表にする。
a=結合, b=射影, c=選択 としており、三つとも誤り。列抽出(a)は射影、行抽出(b)は選択、表の統合(c)は結合であるべきで、割当てがすべてずれている。
a=射影 は正しいが、b の行抽出を「結合」、c の表の統合を「選択」としている点が誤り。行抽出は選択、複数表を一つにするのは結合である。
正解 関係演算の基本三演算を各操作に当てはめる。a「指定したフィールド(列)を抽出する」は縦方向(列)を取り出す操作なので射影、b「指定したレコード(行)を抽出する」は横方向(行)を条件で取り出す操作なので選択、c「複数の表を一つの表にする」は共通の項目で表をつなぎ合わせる操作なので結合である。したがって a=射影, b=選択, c=結合 となり、この組合せはウが正しい。
c=結合 は正しいが、a の列抽出を「選択」、b の行抽出を「射影」としており、選択と射影が入れ替わっている。列を取り出すのが射影、行を取り出すのが選択である。