私は一意のIDに基づいて別のテーブルに結合すべきテーブルを持っています。私がしたらLEFT OUTER JOIN ON
私は重複を持っています。 SELECT
にDISTINCT
を入れれば、正しいレコード数が得られます。その後、私がLEFT OUTER JOIN
を行ったテーブルのフィールドを追加すると、重複が再び発生します。ここに私のクエリです:例ではSQL Left Outer Join?
SELECT DISTINCT
Table1.fname,
Table1.lname,
Table2.address
FROM Table1
LEFT OUTER JOIN Table2
ON Table2.user_id = Table1.userid
私は重複を取得しています上に、また、私がやって試してみました:これは私のレコードの正しい数を与えた
LEFT OUTER JOIN (
SELECT user_id
FROM Table2
GROUP BY user_id
) AS t2 ON Table1.user_id = t2.user_id
が、私はからいくつかの追加の列が必要です私が何かを逃したか、この種の問題に対処するためのより良い方法がある場合、私は思ったんだけど
LEFT OUTER JOIN (
SELECT user_id, address
FROM Table2
GROUP BY user_id, address
) AS t2 ON Table1.user_id = t2.user_id
:私は、再び例を、重複を取得しています余分な列が含まれた後、第2のテーブル、。誰かが何かを見たり、より良い解決策を知っていれば私に知らせてください。
表2の主キーは何ですか? –
複数の値を持つため、これらの追加の列でDISTINCTから重複を取得しています。これらの列から複数の値のうちどれが望ましいか教えていただけない限り、修正する方法を教えてください。 – RBarryYoung
データが表示されますか? – coderredoc