簡體   English   中英

Mysql從LEFT OUTER JOIN中排除記錄

[英]Mysql Exclude records from LEFT OUTER JOIN

我正在嘗試編寫一個查詢,該查詢返回表1中的所有記錄以及表2中存在匹配項的所有記錄,但從兩個表中的列包含設置內容的記錄中排除了記錄。

SELECT h.UniqueID, h.Room, h.AuditBy, h.AuditDate, h.SeqID, h.Stat, h.RepairCode, d.SeqNo, d.SeqHeader, d.SeqText 
FROM  NXLHR_SequenceNo_default d 
LEFT OUTER JOIN  NXLHR_Hist_17 h 
ON d.SeqID = h.SeqID AND h.UniqueID = 'NXLHR02571493893502' 
WHERE h.Stat = 1 OR h.Stat = 2 AND RepairCode IS NULL AND h.SeqID != '1306' OR h.SeqID != '1307' 

目前,我的查詢會重新運行記錄,其中h.SeqID列包含“ 1306”或h.SeqID列包含“ 1307”

有沒有一種方法可以從結果中過濾出列SeqID包含“ 1306”或“ 1307”的任何記錄。

我當前的樣本數據 在此處輸入圖片說明

非常感謝您的寶貴時間。

根據您的描述,您似乎想要一個內部聯接。 您在WHERE子句中有一個問題,條件周圍帶有括號-但這更容易使用INNOT IN

SELECT h.UniqueID, h.Room, h.AuditBy, h.AuditDate, h.SeqID, h.Stat,
       h.RepairCode, d.SeqNo, d.SeqHeader, d.SeqText 
FROM  NXLHR_SequenceNo_default d INNER JOIN
      NXLHR_Hist_17 h 
      ON d.SeqID = h.SeqID AND h.UniqueID = 'NXLHR02571493893502' 
WHERE h.Stat IN (1, 2) AND
      h.RepairCode IS NULL AND
      h.SeqID NOT IN ('SeqID1306', 'SeqID1307') ;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM