データベース|平成22年度 秋期 ITパスポート試験 問84
関係データベースで管理している “商品” 表及び “売上” 表を結合して商品の売上集計を行う。5 月の売上合計金額が最も大きい商品はどれか。
〔商品〕
| 商品コード | 商品名 | 価格 |
|---|---|---|
| 0001 | 商品 A | 2,000 |
| 0002 | 商品 B | 4,000 |
| 0003 | 商品 C | 7,000 |
| 0004 | 商品 D | 10,000 |
〔売上〕
| 売上番号 | 商品コード | 数量 | 売上日 | 配達日 |
|---|---|---|---|---|
| Z00001 | 0004 | 2 | 4/30 | 5/2 |
| Z00002 | 0001 | 1 | 5/1 | 5/3 |
| Z00003 | 0003 | 2 | 5/15 | 5/17 |
| Z00004 | 0001 | 3 | 5/15 | 5/18 |
| Z00005 | 0002 | 3 | 5/5 | 5/18 |
| Z00006 | 0001 | 2 | 5/10 | 5/20 |
| Z00007 | 0002 | 1 | 5/30 | 6/2 |
| Z00008 | 0001 | 2 | 6/1 | 6/9 |
| Z00009 | 0003 | 1 | 6/8 | 6/10 |
- 商品 A
- ✓ これが正解商品 B
- 商品 C
- 商品 D
解説
売った日で絞るので、配った日に釣られてはいけません。
日付の欄が二つ在るときは、どちらで絞るかを先に決めます。設問は、五月の売上の合計を求めていました。だから売った日のほうで、行を選び分けます。四月の末に売って五月に配った行は、外れました。五月の末に売った行は、六月の配達でも入ります。六月に売った二つの行も、外れました。残った六つの行で、値と数を掛けて足していきます。二千の品は、一と三と二で合わせて一万二千でした。四千の品は、三と一で合わせて一万六千になります。七千の品は、二だけなので一万四千でした。一万の品は、五月に売れていないので零になります。だからいちばん大きい四千の品を挙げた肢が当たりました。配った日で絞ると、一万の品が最大になってしまいます。関係データベースでは、絞る欄を取り違えないのが要でした。シラバスも、この操作を学ぶよう求めています。
ほかの選択肢はなぜ違うのか
- 二千の品を挙げた肢が、こちらのほうです。五月には三つの行が並び、いちばん多く売れました。ところが一つあたりの値が、いちばん低いのです。合わせても一万二千にしかなりませんでした。数だけでは決まりません。値を掛けて比べます。
- 七千の品を挙げた肢が、こちらに当たります。五月に売れたのは、二つぶんの一行だけでした。けれども値が高いので、一万四千になります。それでも四千の品には、二千だけ届きませんでした。あと一行あれば逆でした。惜しい差になります。
- 一万の品を挙げた肢が、こちらに当たります。一つあたりの値は、四つの中でいちばん高い形です。ところが売れたのは、四月の末の一行だけでした。配った日は五月ですが、売った日は四月です。五月の合計は零になります。
この問題に関係する言葉
- 関係データベースデータを表の形で持ち、表どうしを結びつけて扱う、最も広く使われているデータベース。設計に使うE-R図は、この形での実装を前提にしません。
出典:平成22年度 秋期 ITパスポート試験 問84(改変:原典の図表をテキストに書き起こした)
同じ単元をまとめて解くならデータベースへ。
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)