php - #1093 - 您不能在 FROM 子句中指定要更新的目标表 'installments'

标签 php mysql

<分区>

我试过了

DELETE FROM installments
WHERE EXISTS (SELECT * FROM `installments`
              JOIN student
              ON installments.s_id=student.s_id
              WHERE installments.curr_sem=3 
                  AND student.bat_id=10 AND student.p_id=170 AND student.DeleteStatus=0);

但显示错误

#1093 - You can't specify target table 'installments' for update in FROM clause

请帮帮我

最佳答案

使用 DELETE JOIN 尝试此解决方案:

DELETE 
    i
FROM 
    installments i JOIN student s USING (s_id)
WHERE 
    i.curr_sem=3 AND 
    s.bat_id=10 AND 
    s.p_id=170 AND 
    s.DeleteStatus=0

关于php - #1093 - 您不能在 FROM 子句中指定要更新的目标表 'installments',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35886900/

相关文章:

php - Mysql:提取多表中未链接数据的最佳实践

php - 使用 1 个远程开发服务器且没有本地开发环境的 Web 开发团队中的 git

mysql - 额外防止数据库篡改

mysql - AMPPS 无法阻止 MySQL

python - 无法使用 sqlite3 Python 模块正确执行 sql 脚本

PHP7 无法在 arm64 上编译(OrangePI PC2)

javascript - file_put_content 数组结构不起作用

php - 是否可以从删除中获取结果?

javascript - 在 Sequelize Attribute 中编写自定义函数

php - 从 PHP MySQL 中的逗号分隔字符串中查找精确值