問題プレビューID: 784671b9

問 30

“注文” 表と “製品” 表に対して,次の SQL 文を実行したときに得られる結果はどれか。

SELECT 製品名, 数量 FROM 注文, 製品
    WHERE 注文.製品コード = 製品.製品コード

注文

日付製品コード数量
2011-04-10P2120
2011-04-15P1100
2011-04-22P450
2011-04-30P880
2011-05-06P1100
2011-05-08P370

製品

製品コード製品名
P1PC
P2テレビ
P3掃除機
P4冷蔵庫
P5エアコン
P6電話機
P7時計
解説

SQL 文は「注文」表と「製品」表を,製品コードが一致する行同士で結合し,製品名と数量を出力します。「注文」表の各行について製品コードを照合すると次のようになります。

日付製品コード数量製品名結果
2011-04-10P2120テレビ出力
2011-04-15P1100PC出力
2011-04-22P450冷蔵庫出力
2011-04-30P880-該当なし
2011-05-06P1100PC出力
2011-05-08P370掃除機出力

「注文」表の製品コード P8 は「製品」表に存在しないため結合されず,出力には現れません。また P1 は 2 回登場するため,PC と数量 100 の行が 2 行出力されます。したがって,結果は「テレビ 120」「PC 100」「冷蔵庫 50」「PC 100」「掃除機 70」となり,選択肢ウに一致します。

したがって,正解は「ウ」です。