“納品”表と“顧客”表を自然結合するSQL文はどれか。
ア |
SELECT *
FROM 納品, 顧客
WHERE 納品.顧客番号 = 顧客.顧客番号 |
イ |
SELECT 顧客.顧客番号, 納品.商品番号, 納品.納品数量, 顧客.顧客名
FROM 納品, 顧客
WHERE 納品.顧客番号 <> 顧客.顧客番号 |
ウ |
SELECT 顧客.顧客番号, 納品.商品番号, 納品.納品数量
FROM 納品
WHERE 納品.顧客番号 IN (SELECT 顧客番号 FROM 顧客) |
エ |
SELECT 顧客.顧客番号, 納品.商品番号, 納品.納品数量, 顧客.顧客名
FROM 納品, 顧客
WHERE 納品.顧客番号 = 顧客.顧客番号 |
答え エ
【解説】
“納品”表と“顧客”表で同じ名前の列は「顧客番号」であるので、2つの表を顧客番号で比較し、一致した行を
か
のように出力すればいいので、これを実現するSQL文としては
SELECT 顧客 .顧客番号, 納品 .商品番号, 納品 .納品数量, 顧客 .顧客名
FROM 納品, 顧客
WHERE 納品 .顧客番号 = 顧客 .顧客番号
(エ)になる。
【キーワード】
・自然結合
【キーワードの解説】
- 自然結合
指定された複数の表の同じ名前の列の値を比較し、値が一致する行を出力する処理です。
もっと、「自然結合」について調べてみよう。
戻る
一覧へ
次へ
|