HOME»データベーススペシャリスト掲示板»H31午後Ⅰ問2設問1(2)d
投稿する

[0606] H31午後Ⅰ問2設問1(2)d

 cybershotさん(No.1) 
公式解答は「従業員.部署コード」となっています。
結合するテーブルのうち、部署コードの列は"従業員"テーブルしかないので、表名を省略して単に「部署コード」でも正解になりますか?
(標準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さん(No.5) 
DB シルバーマイスター
省略すると、オプティマイザ側で表名修飾とASの別名修飾を自動でする(表名は持ち主、ASは同名)ので、同名の列がクエリの登場テーブルに存在しなければ、どっちでもいいことになります。
現実だったら、この修飾処理にはCPUを使うので、CPUをケチるために指定しておくのはふつう(ふつうというのもなんだが、一時的なプログラムでもなければ修飾指定はする)、ということになります。
2023.10.01 13:22

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2016-2024 データベーススペシャリストドットコム All Rights Reserved.

Pagetop