11
LEFT OUTER JOINはどのようにして左のテーブルにあるよりも多くのレコードを返すことができますか?
私は非常に基本的なLEFT OUTER JOINを使用して、左側のテーブルのすべての結果と、より大きなテーブルのいくつかの追加情報を返します。左側のテーブルには4935レコードが含まれていますが、それを追加テーブルにLEFT OUTER JOINすると、レコード数が大幅に増えます。 LEFT OUTER JOINが左のテーブルのすべてのレコードを、右のテーブルの一致したレコードと一致しないすべての行のnull値とともに返すことは、私が知っている限り絶対的な福音です。左の表にあるよりも多くの行を返すことは不可能ですが、それはまったく同じです。 SQLクエリは次のとおりです。 SELECT SUSP.Susp_Visits.SuspReason, SUSP.Susp_Visits.SiteID FROM SUSP.Susp_Visits LEFT OUTER JOIN DATA.Dim_Member ON SUSP.Susp_Visits.MemID = DATA.Dim_Member.MembershipNum おそらく、構文に誤りを犯したか、LEFT OUTER JOINの理解が不完全である可能性があります。うまくいけば、これがどのように発生するのか説明できますか? 追記 素晴らしい回答をありがとう、左外部結合の私の理解ははるかに良くなりましたが、誰でもこのクエリを変更して、左のテーブルに存在するのと同じ数のレコードのみが返されるようにする方法を提案できますか? このクエリは純粋にレポートを生成するためのものであり、重複する一致は単に問題を混乱させます。 /追記