2013-03-20 88 views
0

選定的記錄我有這樣的選擇查詢:刪除通過選擇查詢

SELECT ji . * , a.acc_name 
FROM zp_journal_info ji 
INNER JOIN zp_account a ON a.id = ji.account_id 
WHERE ji.date_time LIKE '2013-03-19%' 
ORDER BY ji.id ASC 

我不知道數據庫的其餘任何事情,因爲我沒有開發,但我只需要刪除由上述查詢生成的行。下面的查詢會正確地執行此操作嗎?

DELETE 
FROM zp_journal_info ji 
INNER JOIN zp_account a ON a.id = ji.account_id 
WHERE ji.date_time LIKE '2013-03-19%' 
ORDER BY ji.id ASC 

回答

1

您只需要在刪除記錄的地方添加表名。

DELETE ji 
FROM zp_journal_info ji 
     INNER JOIN zp_account a ON a.id = ji.account_id 
WHERE ji.date_time LIKE '2013-03-19%' 

你也可以使用DATE

DELETE ji 
FROM zp_journal_info ji 
     INNER JOIN zp_account a ON a.id = ji.account_id 
WHERE DATE(ji.date_time) = '2013-03-19' 
+0

,但如果我需要刪除出來的選擇查詢,即在兩個表的* *整項是什麼? – user961627 2013-03-20 09:42:10

+0

試試,'DELETE ji,a FROM ....'mysql支持 – 2013-03-20 09:43:05