ITパスポート試験 / 平成28年度 春期 ITパスポート試験 / 問95
certification-simodake-work

平成28年度 春期 ITパスポート試験 問95 解説 関係代数の操作

設問図

表1と表2に,ある操作を行って表3が得られた。行った操作だけを全て挙げたものはどれか。

  1. ア 結合
  2. イ 結合,射影 ✓ 正答
  3. ウ 結合,選択
  4. エ 選択,射影

解説

この問題は、2つの表から別の表を導き出すためのデータベース操作(関係代数)の手順を見抜く問題です。解く手順は以下の2段階です。

  1. 共通する項目(品名コード)を使って、表1と表2の情報を1つに統合する(結合)。この結果、品名コード、品名、価格、メーカ、棚番号のすべての列を持つ大きな表ができます。
  2. 完成した表から不要な列(品名コード、メーカ)を取り除き、必要な列(品名、価格、棚番号)だけを残す(射影)。

この手順により、表3が完成するため、答えは結合と射影となります。

データベース操作の基本概念

データベースを操作する際、データの抽出や加工には一定のルールがあります。試験で頻出するのは以下の操作です。

・結合(Join) 複数の表を、共通の項目をキーにして横に繋ぎ合わせる操作です。今回の問題では「品名コード」をキーにして表1と表2を繋げました。

・射影(Project) 表から特定の列だけを抜き出す操作です。縦の切り出しとも言われます。表3を見ると、元の表にあった「メーカ」などの列が消えているため、射影が行われたと判断できます。

・選択(Select) 特定の条件に合致する行だけを抜き出す操作です。横の切り出しとも言われます。もし「価格が140以上のものだけ」のような条件で絞り込んでいれば選択が必要ですが、今回はすべての行が出力されているため、選択は行われていません。

なぜこの知識が必要なのか

この問題の教育的意図は、データベース管理システム(DBMS)がどのようにデータを処理しているかの裏側を理解させる点にあります。

私たちが普段使っているシステムで、例えばECサイトの「注文履歴」画面を表示する場合、システムは「注文テーブル」と「商品テーブル」を結合し、必要な情報(商品名や価格など)だけを射影して表示しています。

もしこれら関係代数の考え方がわかっていれば、SQLでデータを抽出する際に「どのテーブルを結合し、どの列を表示させるべきか」を論理的に組み立てることができます。単なる暗記ではなく、データ処理の論理的な構造を学ぶことで、システム開発やデータ分析における基礎体力が養われます。

参考リンク

学習の記録にははてなブックマーク!

気づいたこと・覚えたことをコメントにメモしよう