本文へスキップ

平成25年度 春期 ITパスポート試験 問67

この問題の解説と、これまでの解答の記録です。

問67
頻出度★★☆

関係データベースの“商品”表から価格が100円以上の商品の行(レコード)だけを全て抽出する操作を何というか。 商品

商品番号商品名価格(円)
S001はさみ200
S002鉛筆50
S003ノート120
S004消しゴム80
S005定規150
出典 平成25年度 春期 ITパスポート試験 問67
解説

問 67

  • 不正解ア

    結合 (join) は、二つ以上の表を共通する項目 (列) の値で対応付け、一つの表にまとめる演算です。表が複数あって初めて成り立つ操作であり、本問は商品表という一つの表だけを扱い、他の表と突き合わせてもいないため該当しません。

  • 不正解イ

    射影 (projection) は、表から必要な列 (項目) だけを取り出す演算で、絞り込む向きが行ではなく列です。たとえば商品表から商品名と価格の列だけを取り出すのが射影で、行は原則としてすべてが対象になります (取り出した列だけで見て同じ内容の行が生じた場合は、重複がまとめられます)。「価格が100円以上」という行の条件で絞る本問の操作は射影ではありません。

  • ウ

    正解 「選択 (selection)」は、表の中から条件に合う行 (レコード) だけを取り出す関係演算です。本問は「価格が100円以上」という行に対する条件で絞り込む操作なので、選択にあたります。図の商品表に適用すると、S001 はさみ 200円・S003 ノート 120円・S005 定規 150円の3行が残り、S002 鉛筆 50円と S004 消しゴム 80円は除かれます。このとき商品番号・商品名・価格の3列はすべてそのまま残り、行数だけが5行から3行に減ります。この「列はそのまま、行だけが減る」という結果の形が選択の目印です。よって正解はウ。

  • 不正解エ

    和 (union) は、列構成が同じ (和両立の) 二つの表を重ね合わせ、どちらか一方にでも含まれる行を集めて一つの表にする集合演算です。表が二つ必要で、行は増えることはあっても条件によって絞り込まれるわけではないため、本問には当てはまりません。

ここがポイント
  • 関係データベースの基本的な関係演算は、選択 = 条件に合う「行」を取り出す、射影 = 必要な「列」を取り出す、結合 = 複数の表を共通の列で結び付ける、の三つ。「絞るのは行か列か」「表は一つか複数か」で見分けられる。
  • 和・差・積集合 (共通部分) は、列構成が同じ (和両立の) 表どうしに適用する集合演算。一方、直積は二つの表の全行の組合せを作る操作で、列構成が違ってもよく結果は列数が増える。いずれも二つの表があって初めて成り立つため、一つの表を条件で絞る本問の操作とは別物である。
用語

解答の記録