作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收到这个错误:
You can't specify target table 'wp_mail_queue' for update in FROM clause
因为这个查询:
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
我想它是子查询的结果。将 DELETE 替换为 SELECT *,它会准确返回我要删除的条目。我需要的是一种重写它的方法,这样我就不需要在那个子查询中查询 wp_mail_queue,或者完全避免子查询。
我首先想到的是变量,如果我能以某种方式将子查询分配给一个变量然后使用它呢?
最佳答案
尝试:
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
关于mysql - 您不能在 FROM 子句中指定要更新的目标表 'wp_mail_queue',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7378486/
我是一名优秀的程序员,十分优秀!