我無法正確執行INSERT
查詢,而且我似乎無法在Google或Stack Overflow上找到解決此特定問題的任何內容。MySQL INSERT在同一張表上使用帶有COUNT()的子查詢
我試圖爲精選條目創建一個簡單的表格,其中entry_id
與其當前訂單一起保存到表格中。
我所需的輸出是這樣的:
如果featured
表目前有以下三項:
featured_id entry_id featured_order
1 27 0
2 54 1
4 23 2
我想下一個條目保存與featured_order
= 3。
我試圖讓下面的查詢,沒有運氣的工作:
INSERT INTO `featured`
(
`entry_id`, `featured_order`
)
VALUES
(
200,
(SELECT COUNT(*) AS `the_count` FROM `featured`)
)
我得到的錯誤是:You can't specify target table 'featured' for update in FROM clause
。
任何人都可以幫助一個解決方案,獲得計數而不會導致錯誤?
在此先感謝!
可能重複http://stackoverflow.com/questions/45494/sql-delete-不能重複的 - 這個問題是刪除;不能重複指定目標表中的更新從條款 – Tim 2011-05-27 01:52:06
不是重複的 - 這個問題是刪除;這是爲了插入。這裏根本不適用。 – Bohemian 2011-05-27 03:09:45