カコモンノート

問29応用情報技術者 令和5年度 秋期

29 / 80問
令和5年度 秋期2023年

“製品”表と“在庫”表に対し,次のSQL文を実行した結果として得られる表の行数は幾つか。

この問題の図
問題に添えられた図。出典は下に書いています。

選択肢をえらぶと、答えと解説が出ます

選択肢をえらぶと、
ここに答えと解説が出ます
正答 2

解説

正解は2。このSQL文は、在庫表に在庫数が30を超える行が一つもない製品を製品表から取り出す。製品ごとに在庫表を見ると次のようになる。
AB1805は150の行があるので除かれる。CC5001は200の行があるので除かれる。MZ1000は在庫表に行がなく、30を超える行もないので残る。XZ3000は30と20で、30は「30を超える」に当たらないので残る。ZZ9900は130の行があるので除かれる。
残るのはMZ1000とXZ3000の2行なので2が正しい。

  • 1は、MZ1000かXZ3000の一方を落とした数で、在庫表に行がない製品も残ることや、ちょうど30は「30を超える」に当たらないことを見落としている。
  • 3と4は、30以下の行もあるAB1805(20)やZZ9900(10)を残すなど、30を超える行が一つでもあれば除かれる点を見落としたときの数である。

根拠:SQLの標準的な理解(NOT EXISTSによる相関副問合せ)

KEY POINT
NOT EXISTSは副問合せの結果が1行もないときに真になり、相手の表に行がないものも残す。
出典:令和5年度 秋期 応用情報技術者試験 午前 問29(独立行政法人 情報処理推進機構(IPA))
独立行政法人情報処理推進機構(IPA)が公表している過去問題です。IPA の「過去問題の使用について」に基づき、IPA が指定する形で出典を明記して掲載しています(利用の許諾申請は不要)。問題文・選択肢の内容は変えていません。元の問題冊子から文字を起こす都合で、改行・字間の空白は省き、英数字の全角・半角は元とそろえていない箇所があります。図表は IPA が公表した問題冊子のものです。解説は当サイトが独自に作成したもので、IPA とは関係ありません。