我收到此错误:
您无法在FROM中为更新指定目标表'wp_mail_queue' 条款
由于此查询:
DELETE FROM wp_mail_queue
WHERE message_id = (SELECT message_id FROM wp_mail_queue ORDER BY id LIMIT 0, 1)
ORDER BY wp_mail_queue.id
LIMIT 100
我认为它来自子查询。用SELECT *替换DELETE,它会准确返回我要删除的条目。我需要的是一种重写方法,这样我就不需要在该子查询中查询wp_mail_queue,也不需要完全避免子查询。
我的想法首先是变量,如果我能以某种方式将子查询分配给一个,然后使用它?
答案 0 :(得分:4)
尝试:
DELETE FROM wp_mail_queue
WHERE message_id = (SELECT * FROM (SELECT message_id FROM wp_mail_queue ORDER BY id LIMIT 0, 1) queue_table)
ORDER BY wp_mail_queue.id
LIMIT 100