メインコンテンツへスキップ
基本情報技術者2014年度 春期午前28

2014年度 春期 基本情報技術者 午前28

難度標準

“商品”表,“在庫”表に対する次の SQL 文の結果と同じ結果が得られる SQL 文はどれか。ここで、下線部は主キーを表す。

SELECT 商品番号 FROM 商品

WHERE 商品番号 NOT IN (SELECT 商品番号 FROM 在庫)

選択肢

SELECT 商品番号 FROM 在庫 WHERE EXISTS (SELECT 商品番号 FROM 商品)
SELECT 商品番号 FROM 在庫 WHERE NOT EXISTS (SELECT 商品番号 FROM 商品)
SELECT 商品番号 FROM 商品 WHERE EXISTS (SELECT 商品番号 FROM 在庫 WHERE 商品.商品番号 = 在庫.商品番号)
SELECT 商品番号 FROM 商品 WHERE NOT EXISTS (SELECT 商品番号 FROM 在庫 WHERE 商品.商品番号 = 在庫.商品番号)

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

エが正解となるのは、元のSQL文が「商品」表に存在するが「在庫」表には存在しない「商品番号」を抽出しているためです。この条件は、「商品」表の各「商品番号」について、「在庫」表にその「商品番号」が存在しないことを確認することと同義です。「NOT EXISTS」句は、副SELECT文が何も結果を返さない場合に真となります。したがって、選択肢エは「商品」表の「商品番号」を対象とし、その「商品番号」が「在庫」表に存在しない場合にのみレコードを抽出するという、元のSQL文と同じ条件を満たします。

詳細Layer 2

アは、「在庫」表に存在する「商品番号」を抽出しますが、これは元のSQL文が求めている「商品」表にあり「在庫」表にないものとは異なります。イは、「在庫」表の「商品番号」を対象に、「商品」表にその「商品番号」が存在しないものを抽出するため、求める結果と逆になります。ウは、「商品」表の「商品番号」のうち、「在庫」表にも存在するものを抽出するため、元のSQL文とは反対の結果となります。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「データベース」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
正規化・SQL・トランザクション特性(ACID)・同時実行制御・分散DBの基本。
学習の進め方
ER 図 ⇄ 関係スキーマ ⇄ SQL の3者を行き来できるよう演習。3NF までの正規化を手で実行できると強い。
関連キーワード
正規化SQLACIDトランザクションロックデッドロックER図
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

データベース の他の問題