1
導入錯誤後,我的帖子中有很多重複內容。Mysql刪除類似帖子:無法在FROM子句中指定目標表'wp_posts'進行更新
然後,我嘗試與查詢刪除這個帖子:
DELETE
FROM wp_posts USING wp_posts
LEFT JOIN wp_postmeta pm ON wp_posts.ID = pm.post_id
AND pm.meta_key="_wpbdp[fields][6]"
LEFT JOIN wp_wpbdp_listing_fees wlf ON wp_posts.ID = wlf.listing_id
WHERE wp_posts.post_type="wpbdp_listing"
AND wp_posts.post_status="publish"
AND EXISTS (
SELECT NULL
FROM wp_posts p2
LEFT JOIN wp_postmeta pm2 ON p2.ID = pm2.post_id
AND pm2.meta_key="_wpbdp[fields][6]"
LEFT JOIN wp_wpbdp_listing_fees wlf2 ON p2.ID = wlf2.listing_id
WHERE p2.post_type="wpbdp_listing"
AND pm2.meta_value=pm.meta_value
AND p2.post_status="publish"
AND wlf2.category_id=wlf.category_id
)
不幸的是,我不能做一個SELECT
聲明誰調用我想刪除同一表。 還有其他解決方案嗎?
你有某種身份證或什麼東西?如果是這樣,請選擇獲取重複ID,將其存儲在數組中,然後再次嘗試刪除ID。或者:你如何確定一行是「重複的」?然後,'UNIQUE'鍵可以很好地解決您的問題。 – ATaylor
你可以在那裏閱讀http://stackoverflow.com/questions/4685173/delete-all-duplicate-rows-except-for-one-in-mysql – Nick
我想你需要寫一個腳本並運行幾個查詢來清理你的數據庫。 – m4t1t0