データベース|平成29年度 春期 ITパスポート試験(特別措置試験) 問90
関係データベースで管理している“商品”表に対して次の三つの操作a〜cを行ったとき,得られる値が大きい順に操作を左から並べたものはどれか。ここで,“%”は0文字以上の任意の文字列を表すものとする。
〔操作〕
a 大盛が‘有’でかつ商品名が‘%うどん%’で選択される商品の数を求める。
b 価格が400以上かつ550以下で選択される商品の数を求める。
c 商品名が‘うどん%’で選択される商品の数を求める。
商品
| 商品番号 | 商品名 | 価格 | 大盛 |
|---|---|---|---|
| S001 | きつねうどん | 300 | 有 |
| S002 | たぬきうどん | 250 | 有 |
| S003 | 天ぷらうどん | 500 | 無 |
| S004 | うどん定食 | 550 | 有 |
| S005 | うどんすき | 600 | 無 |
| S006 | カレーうどん | 400 | 有 |
- ✓ これが正解a,b,c
- b,c,a
- c,a,b
- c,b,a
解説
三つの条件それぞれで数えてから、多い順に並べ替えます。
関係データベースの表から、条件に当てはまる行を数えて比べる問題です。aは、大盛が有で、かつ商品名のどこかにうどんを含むものです。きつね、たぬき、うどん定食、カレーの四つが当たります。bは、価格が四百以上五百五十以下です。天ぷらの五百、うどん定食の五百五十、カレーの四百で三つになります。cは、商品名がうどんで始まるものです。うどん定食とうどんすきの二つだけで、途中にうどんが入るものは当たりません。四、三、二の順なので、a、b、cと並びます。前後に印が付くかどうかで、当たる行が大きく変わります。印の位置で当たる行が変わる点が、この問いの要点です。前後に印が付いていれば、どこに入っていても当たります。後ろだけに付いていれば、その字で始まるものだけに絞られます。数える前に、どちらの形かを確かめます。
ほかの選択肢はなぜ違うのか
- bを先頭に置いています。bは三つですが、aは四つあるので、aのほうが大きくなります。先頭が入れ替わっています。三つと四つを取り違えています。大盛の印が付いたうどんは四つあるので、こちらが先頭に来ます。
- cを先頭に置いています。cはうどんで始まるものだけなので二つにとどまり、三つの中でいちばん少なくなります。並びが逆です。うどんで始まるものは二つしかありません。いちばん少ないものを先頭に置いており、順序が逆です。
- cを先頭に、aを末尾に置いています。実際は逆で、aが四つでいちばん多く、cが二つでいちばん少なくなります。順序が完全に反転しています。多いほうと少ないほうを取り違えています。四つ、三つ、二つの順に並べ直すと、正しい並びが出ます。
この問題に関係する言葉
- 選択
- 関係データベースデータを表の形で持ち、表どうしを結びつけて扱う、最も広く使われているデータベース。設計に使うE-R図は、この形での実装を前提にしません。
- 表
- データベースたくさんのデータを決まった形で貯め、探したり書き換えたりできるようにした仕組み。多くの人が同時に使うことを前提にしています。
出典:平成29年度 春期 ITパスポート試験(特別措置試験) 問90
同じ単元をまとめて解くならデータベースへ。
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)