gpt4 book ai didi

mysql - mysql 子查询失败

转载 作者:行者123 更新时间:2023-11-29 12:43:52 24 4
gpt4 key购买 nike

我有一个子查询如下:它将首先根据条件选择id并删除

记录,

    Delete from post_master_user_map WHERE id IN
(SELECT id FROM `post_master_user_map` WHERE posted_by_user_id=110);

但它给了我以下错误:

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

这有什么问题吗?提前致谢。

更新

这也失败了,我不知道为什么

DELETE FROM `post_master_user_map` WHERE `reshare_id` in (SELECT id FROM `post_master_user_map` WHERE 
posted_by_user_id=110);

最佳答案

当您尝试修改表并在子查询中从同一个表中进行选择时,会发生此错误。

无论如何,要解决该错误,请按如下方式更改您的查询

Delete from post_master_user_map WHERE posted_by_user_id=110;

对于更新的查询(在您的问题中),请使用以下内容

    DELETE t1 FROM post_master_user_map as t1 INNER JOIN 
post_master_user_map as t2 ON t1.reshare_id=t2.id and t2.posted_by_user_id=110

关于mysql - mysql 子查询失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25722768/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com