3
Delete from post
where id_post
in
(
select MIN(id_post)
from post
where id_owner='2'
)
返回: 「你不能指定目標表‘後’的更新在FROM子句」刪除後用最小的ID SQL
我在做什麼錯?
Delete from post
where id_post
in
(
select MIN(id_post)
from post
where id_owner='2'
)
返回: 「你不能指定目標表‘後’的更新在FROM子句」刪除後用最小的ID SQL
我在做什麼錯?
問題是,如果你在一個表上執行UPDATE/INSERT/DELETE,你不能在內部查詢中引用該表(然而你可以從該外部表引用一個字段...... )
的解決方案是更換後的實例在子查詢與(選擇MIN(id_post)從交 其中id_owner =「2」),這樣
Delete from post
where id_post
in
(
select id_post
from (select MIN(id_post)
from post
where id_owner='2') as A
)
如何使用ORDER BY
和LIMIT
?
Delete p
from post p
where id_owner = 2
order by id_post
limit 1;
注意:不要在數字常量周圍使用單引號。我猜id_owner
是數字。
的可能的複製[ MySQL錯誤1093 - 無法在FROM子句中指定目標表進行更新](http://stackoverflow.com/questions/45494/mysql-error-1093-cant-specify-target-table-for-u PDATE功能於從子句) –