HOME»基本情報技術者試験掲示板»平成21年春期午後問3
投稿する
アは,「じゃがいもの在庫が0でない」ことだけを判定して,
じゃがいもを食材として使用する料理名をすべて表示します。
ことを判定していません。
--------
問題文にこう書いてあります。
--------
次のように書くこともできます。
SELECT 料理表.料理名
FROM 料理表, 分量表, 商品表
WHERE 料理表.料理ID = 分量表.料理ID
AND 分量表.商品ID = 商品表.商品ID
AND [ ]
WHERE句に関係式を列挙することになるのですが,
表の結合のための関係式と,行の選択のための関係式は,
役割が違いますので,両者を文法で区別するためには
FROM … JOIN … ON … 句の方が優れています。
WHERE 商品表.商品名 = 'じゃがいも'
AND 料理表.料理ID = 分量表.料理ID
AND [ ]
AND 分量表.商品ID = 商品表.商品ID
のように,結合の関係式と選択の関係式を混ぜて記述されたら役割が分かりづらいですから。
平成21年春期午後問3 [4469]
ANさん(No.1)
https://www.fe-siken.com/kakomon/21_haru/pm03.html
設問4の答えがアではいけないのはなぜでしょうか?
また設問4にてJOINを使っていますが、わざわざそうしている理由があまり良くわかりません。
設問2のようにANDを使って表を結合するのではだめなのでしょうか?
素人質問ですみません。
どなたか教えていただけますと幸いです。
設問4の答えがアではいけないのはなぜでしょうか?
また設問4にてJOINを使っていますが、わざわざそうしている理由があまり良くわかりません。
設問2のようにANDを使って表を結合するのではだめなのでしょうか?
素人質問ですみません。
どなたか教えていただけますと幸いです。
2022.10.07 13:36
jjon-comさん(No.2)
★FE ゴールドマイスター
> 設問4の答えがアではいけないのはなぜでしょうか?
アは,「じゃがいもの在庫が0でない」ことだけを判定して,
じゃがいもを食材として使用する料理名をすべて表示します。
> 使用する食材すべてについて在庫がある
ことを判定していません。
--------
> 設問4にてJOINを使っていますが、わざわざそうしている理由があまり良くわかりません。
問題文にこう書いてあります。
> SQL文の可読性を向上させるため,表の結合にはJOIN句を用いる。
--------
> 設問2のようにANDを使って表を結合するのではだめなのでしょうか?
次のように書くこともできます。
SELECT 料理表.料理名
FROM 料理表, 分量表, 商品表
WHERE 料理表.料理ID = 分量表.料理ID
AND 分量表.商品ID = 商品表.商品ID
AND [ ]
WHERE句に関係式を列挙することになるのですが,
表の結合のための関係式と,行の選択のための関係式は,
役割が違いますので,両者を文法で区別するためには
FROM … JOIN … ON … 句の方が優れています。
WHERE 商品表.商品名 = 'じゃがいも'
AND 料理表.料理ID = 分量表.料理ID
AND [ ]
AND 分量表.商品ID = 商品表.商品ID
のように,結合の関係式と選択の関係式を混ぜて記述されたら役割が分かりづらいですから。
2022.10.07 18:04
ANさん(No.3)
理解できました。
詳細に教えていだきありがとうございました!
詳細に教えていだきありがとうございました!
2022.10.07 19:09