我試圖根據另一個數據庫的選擇標準從一個數據庫中刪除記錄。我們有兩個表格,emailNotification存儲作業和電子郵件列表。然後我們有工作。我想清除已關閉的作業的電子郵件通知。我在Stackoverflow上發現了一些前面的例子,這些例子將我引向這種類型的語法(我以前試圖在之前嘗試進行連接)。從加入的一張表中刪除
DELETE FROM emailNotification
WHERE notificationId IN (
SELECT notificationId FROM emailNotification e
LEFT JOIN jobs j ON j.jobId = e.jobId
WHERE j.active = 1
)
我收到錯誤,您無法在FROM子句中指定目標表'emailNotication'進行更新。
來自http://dev.mysql.com/doc/refman/5.0/en/delete.html:目前,您無法從表中刪除並從子查詢中的同一張表中選擇,請參閱下面的答案 – 2010-11-11 13:36:17