【问题标题】:MySQL DELETE query issue with Select使用 Select 的 MySQL DELETE 查询问题
【发布时间】:2011-09-06 15:27:52
【问题描述】:

以下查询:

DELETE FROM CO05IN.ININVPRC WHERE IPPART IN (SELECT IPPART FROM CO05IN.ININVPRC left join CO05IN.ININVMST on IPPART = IMPART where IMPART is null);

在日志上创建:您不能在 FROM 子句中指定目标表 'ININVPRC' 进行更新。

这是什么原因造成的?

注意使用 MySQL 5.1 版

【问题讨论】:

    标签: mysql mysql-error-1093


    【解决方案1】:

    这样试试。

    DELETE FROM CO05IN.ININVPRC WHERE IPPART IN (select * from (SELECT IPPART FROM CO05IN.ININVPRC left join CO05IN.ININVMST on IPPART = IMPART where IMPART is null) as t);
    

    【讨论】:

    • 可能是我使用了 MySQL 工作台,我需要禁用“禁止不带 WHERE 子句(安全更新)的 UPDATE 和 DELETE 语句。需要重新连接。” ...但是直到我尝试了上述查询,我​​才看到该消息。
    猜你喜欢
    • 2020-09-30
    • 2013-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-20
    相关资源
    最近更新 更多