私は非常に基本的な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の理解が不完全である可能性があります。うまくいけば、これがどのように発生するのか説明できますか?
追記
素晴らしい回答をありがとう、左外部結合の私の理解ははるかに良くなりましたが、誰でもこのクエリを変更して、左のテーブルに存在するのと同じ数のレコードのみが返されるようにする方法を提案できますか?
このクエリは純粋にレポートを生成するためのものであり、重複する一致は単に問題を混乱させます。
/追記