問95
頻出度★★☆
表1と表2に,ある操作を行って表3が得られた。行った操作だけを全て挙げたものはどれか。 表1
| 品名コード | 品名 | 価格 | メーカ |
|---|---|---|---|
| 001 | ラーメン | 150 | A社 |
| 002 | うどん | 130 | B社 |
表2
| 品名コード | 棚番号 |
|---|---|
| 001 | 1 |
| 002 | 5 |
表3
| 品名 | 価格 | 棚番号 |
|---|---|---|
| ラーメン | 150 | 1 |
| うどん | 130 | 5 |
この問題の解説と、これまでの解答の記録です。
表1と表2に,ある操作を行って表3が得られた。行った操作だけを全て挙げたものはどれか。 表1
| 品名コード | 品名 | 価格 | メーカ |
|---|---|---|---|
| 001 | ラーメン | 150 | A社 |
| 002 | うどん | 130 | B社 |
表2
| 品名コード | 棚番号 |
|---|---|
| 001 | 1 |
| 002 | 5 |
表3
| 品名 | 価格 | 棚番号 |
|---|---|---|
| ラーメン | 150 | 1 |
| うどん | 130 | 5 |
「結合」だけでは表1と表2をつないだ段階で「品名コード」と「メーカ」を含む5列が残ってしまい、3列だけの表3にはならない。不要な列を落とす「射影」も必要なので、操作が足りない。
正解 表3を作るには2段階の操作が必要である。まず、表1と表2に共通する列「品名コード」をキーにして2つの表を横につなぎ、1つの表にまとめる操作が「結合」である。結合すると「品名コード・品名・価格・メーカ・棚番号」の5列がそろう。次に、そのうち表3に残っている「品名・価格・棚番号」の3列だけを取り出し、「品名コード」と「メーカ」の列を落とす操作が「射影」である。行はラーメン・うどんの2件がどちらもそのまま残っており、行の絞り込み(選択)は行われていない。よって行った操作は「結合」と「射影」の2つで、イが正しい。
「選択」は条件に合う行だけを取り出す操作だが、表3にはラーメン・うどんの両方の行がそのまま残っており、行の絞り込みは行われていない。また列を減らす「射影」が挙がっておらず、実際に行った操作と一致しない。
「棚番号」は表2、「品名・価格」は表1にある列なので、2つの表を1つにまとめる「結合」を行わなければ表3の形にはならない。結合を欠いており、しかも行っていない「選択」を含んでいる点でも誤り。