平成29年秋期午後問3設問3
初学者さん
(No.1)
b1、b2は理解できたのですが、b3でカが選べない理由がわかりません、、、。
FROM( )FACTTB
↑かっこを閉じているのであれば、次行のGROUP BYは副問合せのSELECT文になくても、主問合せのSELECT文にあれば指定出来ないのでしょうか。
FROM( )FACTTB
↑かっこを閉じているのであれば、次行のGROUP BYは副問合せのSELECT文になくても、主問合せのSELECT文にあれば指定出来ないのでしょうか。
2021.01.30 16:09
詞音さん
(No.2)
解説にあるとおり、存在しない「合計販売額」列をGROUP BY句で指定しているためです。
(解説から抜粋)
GROUP BYの対象となる元表(FACTTB)は、年齢、分類、販売時単価、個数の4列から成っており"合計販売額"という列は存在しません。
GROUP BYで指定可能な列は元表内に存在する列に限られるため、GROUP BY句で"販売合計額"列を指定している「カ」は不適切と分かります。
(解説から抜粋)
GROUP BYの対象となる元表(FACTTB)は、年齢、分類、販売時単価、個数の4列から成っており"合計販売額"という列は存在しません。
GROUP BYで指定可能な列は元表内に存在する列に限られるため、GROUP BY句で"販売合計額"列を指定している「カ」は不適切と分かります。
2021.01.30 16:31
初学者さん
(No.3)
ご回答ありがとうございます。
しつこく申し訳ないのですが、
主問合せのSELECT文に「AS 合計販売額」があっても不可ということでしょうか。
しつこく申し訳ないのですが、
主問合せのSELECT文に「AS 合計販売額」があっても不可ということでしょうか。
2021.01.30 17:20
詞音さん
(No.4)
> 主問合せのSELECT文に「AS 合計販売額」があっても不可ということでしょうか。
ご認識の通り、不可ということです。
SQL実行の際、コンピュータが読み込む順番が決まっているのですが、
SELECT句はGROUP句の後に読み込まれます。
なので、GROUP BYを読み込んだ時点では、
コンピュータは「AS 合計販売額」が何のことか認識できない状況になっています。
2021.01.30 18:58
詞音さん
(No.5)
上記、GROUP句と書いてしまいましたが、GROUP BY句とお考え下さい。
GROUP 句と言っている人もいますが念のため。
GROUP 句と言っている人もいますが念のため。
2021.01.30 18:59
初学者さん
(No.6)
詞音さん
お答えいただきありがとうございます!
無事理解することができました。感謝しています。
お答えいただきありがとうございます!
無事理解することができました。感謝しています。
2021.01.30 20:03
広告
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
広告