- ベストアンサー
12年秋 午後 問5 設問1
本題とは関係ないのですが 問題の中で以下の表現があります ------------------------------------------------------------ 例 SELECT 受注明細表.受注番号, 顧客名, SUM(注文数量*単価) FROM 受注明細表, 顧客表, 商品表, 注文表 WHERE 顧客表.顧客コード = 注文表.顧客コード AND 受注明細表.商品番号 = 商品表.商品番号 AND 受注明細表.受注番号 = 注文表.受注番号 ------------------------------------------------------------- ここで受注明細表.受注番号 = 注文表.受注番号 の比較は なにも絞り込んでいるのでしょうか? 必要性が理解できません
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
結合しなきゃ,その明細がどの注文票に記録された行か分からないので。 顧客表 | |顧客コードが同じ行を結合 ↓ 注文表 | |受注番号が同じ行を結合 ↓ 受注明細表 ↑ |商品番号が同じ行を結合 | 商品表
その他の回答 (1)
- ymmasayan
- ベストアンサー率30% (2593/8599)
回答No.2
No.1の方の回答の通り4つの表の該当行同士を結びつけるのに3つの比較を持つWHERE文を使っています。 別の考え方として4つの表の各行数の積の行数文の連結行を作ってその中からWHERE文に合致する行のみをSELECTするという風に見ることもできます。
お礼
確かに 関係づけには必要であることが納得できました もしこの行がないとするとSUM(注文数量*単価) が計算できないということが理解できました 訓練ですね