H31午後Ⅰ問2設問1(2)d
cybershotさん
(No.1)
公式解答は「従業員.部署コード」となっています。
結合するテーブルのうち、部署コードの列は"従業員"テーブルしかないので、表名を省略して単に「部署コード」でも正解になりますか?
(標準SQLでは表明省略不可とかいうルールあるんでしたっけ…)
結合するテーブルのうち、部署コードの列は"従業員"テーブルしかないので、表名を省略して単に「部署コード」でも正解になりますか?
(標準SQLでは表明省略不可とかいうルールあるんでしたっけ…)
2023.09.30 23:25
cybershotさん
(No.2)
すみません、年度はH31ではなくH30の間違いでした
2023.10.01 00:25
ピノッキさん
(No.3)
過去問の解説に
「'部署コード'だけでも構わないが、問題では従業員家族テーブルにしかない'扶養フラグ'を'従業員家族.扶養フラグ'としているので、揃えたほうがよいと考える。」
とあります。
結論、表名はこの問題では省略可能でしょう。
「'部署コード'だけでも構わないが、問題では従業員家族テーブルにしかない'扶養フラグ'を'従業員家族.扶養フラグ'としているので、揃えたほうがよいと考える。」
とあります。
結論、表名はこの問題では省略可能でしょう。
2023.10.01 08:39
cybershotさん
(No.4)
ありがとうございます!
私の手元の解答解説ではその辺り明言されていなかったので、助かります。
私の手元の解答解説ではその辺り明言されていなかったので、助かります。
2023.10.01 12:38
GinSanaさん
★DB ゴールドマイスター
(No.5)
省略すると、オプティマイザ側で表名修飾とASの別名修飾を自動でする(表名は持ち主、ASは同名)ので、同名の列がクエリの登場テーブルに存在しなければ、どっちでもいいことになります。
現実だったら、この修飾処理にはCPUを使うので、CPUをケチるために指定しておくのはふつう(ふつうというのもなんだが、一時的なプログラムでもなければ修飾指定はする)、ということになります。
現実だったら、この修飾処理にはCPUを使うので、CPUをケチるために指定しておくのはふつう(ふつうというのもなんだが、一時的なプログラムでもなければ修飾指定はする)、ということになります。
2023.10.01 13:22
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。