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

H28 春 午後一 問3 設問2 (1) d [0738]

 初心者さん(No.1) 
社員が過去に登録した訪問予定のうち、その予定が予定日に訪問しなかった顧客について抽出するため、訪問予定があった社員だけに絞るために右側外結合でもよい気がしたのですが、内部結合が正解な理由を教えて頂ければ幸いです。
2024.09.10 12:58
GinSanaさん(No.2) 
DB ゴールドマイスター
>その予定が予定日に訪問しなかった顧客について抽出するため、
これは実績が予定日でない、の誤りです。一緒の場合は訪問実績.*の値がjoinの結果nullにはならないので、それがnullの場合は訪問実績との結合に失敗した、つまり予定日 != 実施日だったのがwhere句でわかるわけです。
>訪問予定があった社員だけに絞るために
外部結合の場合、関係ない顧客間のレコードの駆動表の項目値がnullで残り、訪問実績のwhereを見ればわかる通りこれは外部結合を使わざるを得ない使い方なので、訪問予定の結合では振り落としをしないと結果がまともにならないので内部結合が必要なのです。
2024.09.10 21:36
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2016-2024 データベーススペシャリストドットコム All Rights Reserved.

Pagetop