2016-08-29 14 views
0

LEFT OUTER JOINを3つのテーブルに使用するクエリを作成しようとしています。私は2つのテーブルを結合する最初の部分を完了しているが、私は3番目のテーブルをintergartingに固執しています。MySQL LEFT OUTER JOINに3番目のテーブルを含める

私が必要とするのは、最初のクエリに含めるNXLHR_Validの「ステータス」フィールドです。以下は

、どのように私はすべてのヘルプは素晴らしいことだFIRSTクエリ

FIRST QUERY

SELECT NXLHR_SequenceNo_default.SeqNo, NXLHR_SequenceNo_default.SeqHeader, NXLHR_SequenceNo_default.SeqText, NXLHR_Hist.UniqueID, NXLHR_Hist.Room, NXLHR_Hist.Status, NXLHR_Hist.Water, NXLHR_Hist.AuditBy 
FROM NXLHR_SequenceNo_default 
LEFT OUTER JOIN NXLHR_Hist 
ON NXLHR_SequenceNo_default.SeqID = NXLHR_Hist.SeqID 
AND NXLHR_Hist.UniqueID = 'NXLHR01031472477564' 
WHERE NXLHR_SequenceNo_default.SeqActive = 1 
ORDER BY NXLHR_SequenceNo_default.OrderID 

SECOND QUERY

SELECT NXLHR_Valid.UniqueID, NXLHR_Valid.Status 
FROM NXLHR_Valid 
WHERE NXLHR_Valid.UniqueID = 'NXLHR01031472477564' 

に2番目のクエリを、私のクエリに含まれますされています。あなたの時間をありがとう。

+0

3つのテーブルを外部結合するのではなく、ビジネス目標を記述することをお勧めします。外部結合と一緒に3つのテーブルを結合する際に問題はありません。 –

答えて

1
SELECT d.SeqNo 
    , d.SeqHeader 
    , d.SeqText 
    , h.UniqueID 
    , h.Room 
    , h.Status 
    , h.Water 
    , h.AuditBy 
    , v.Status 
    FROM NXLHR_SequenceNo_default d 
    LEFT 
    JOIN NXLHR_Hist h 
    ON h.SeqID = d.SeqID 
    AND h.UniqueID = 'NXLHR01031472477564' 
    LEFT 
    JOIN NXLHR_Valid v 
    ON v.UniqueID = h.UniqueID 
WHERE d.SeqActive = 1 
ORDER 
    BY d.OrderID 
+0

ご返信いただきありがとうございます。私は何かを学んだ。もう一度ありがとう。 – DCJones

+0

(うまくいけばいくつか!) – Strawberry

関連する問題