我正在嘗試一個簡單的LEFT JOIN查詢,我想從左表中找到記錄,其中 在RIGHT表中沒有匹配。MySQL LEFT OUTER JOIN不過濾記錄
SELECT
LeftTable.ID,
RightTable.ID as NullID
FROM
LeftTable
LEFT OUTER JOIN RightTable ON RightTable.ID = LeftTable.ID
那麼,如何選擇結果只包含NullID爲NULL的記錄的行呢? 我認爲左外部連接是需要的,但是所有左邊的記錄都會返回匹配和不匹配的正確記錄,我只希望留下具有不匹配正確記錄的記錄。數據庫引擎是InnoDB。
例如,查詢返回以下:
LeftTable.ID, NullID
1, 1
2, Null
我只想導致2即其中NULLID = NULL
我嘗試以下LEFT JOIN,是我一直查詢的種類嘗試但我得到錯誤 「[錯誤] 1054 - 在'where子句'」中的未知列'NullID'「。
SELECT
LeftTable.ID,
RightTable.ID as NullID
FROM
LeftTable
LEFT JOIN RightTable ON RightTable.ID = LeftTable.ID
where NullID = Null;
希望這可以解釋我的問題。謝謝。