从嵌套选择结果中删除问题

发布于 2024-10-04 17:14:10 字数 227 浏览 4 评论 0原文

我写了这个查询:

delete from `test1` where id in (
SELECT id
FROM `test1`
GROUP BY m, n
HAVING count( id ) >1)

但是 mysql 给出了这个错误:

“你不能在 FROM 子句中指定用于更新的目标表“test1””

为什么?我该如何解决它?

i have written this query:

delete from `test1` where id in (
SELECT id
FROM `test1`
GROUP BY m, n
HAVING count( id ) >1)

but mysql gives this error:

'You can't specify target table 'test1' for update in FROM clause '

why? how can i solve it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

空城之時有危險 2024-10-11 17:14:10

您正在更新表,而选择正在进行中......这不是小菜一碟:-)
我建议首先选择 tmp 表,然后在第二个查询中删除。

You are updating table while select is in progress... THat' not a piece of cake :-)
I would suggest to select into tmp table first, and do delete in second query.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文