首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >MySQL DELETE FROM with subquery as条件

MySQL DELETE FROM with subquery as条件
EN

Stack Overflow用户
提问于 2010-12-17 22:15:48
回答 9查看 155.4K关注 0票数 96

我正在尝试执行这样的查询:

DELETE FROM term_hierarchy AS th
WHERE th.parent = 1015 AND th.tid IN (
    SELECT DISTINCT(th1.tid)
    FROM term_hierarchy AS th1
    INNER JOIN term_hierarchy AS th2 ON (th1.tid = th2.tid AND th2.parent != 1015)
    WHERE th1.parent = 1015
);

正如您可能知道的,如果相同的tid有其他父级,我想删除1015的父级关系。但是,这会产生一个语法错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS th
WHERE th.parent = 1015 AND th.tid IN (
  SELECT DISTINCT(th1.tid)
  FROM ter' at line 1

我已经检查了文档,并运行子查询本身,它看起来都是正确的。有没有人能搞清楚这里出了什么问题?

更新:如下所示,MySQL不允许在条件的子查询中使用要删除的表。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4471277

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档