You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL中左连接DELETE语句语法错误排查及修正建议咨询

MySQL DELETE JOIN语句语法错误分析及修正

问题原因

原语句的核心问题是没有明确指定要删除的目标表。在MySQL中,当DELETE语句结合JOIN使用时,必须明确告知数据库要删除哪个(或哪些)表中的记录,否则数据库无法识别操作对象,从而触发语法错误。你的语句逻辑是要删除table1中不存在table2匹配记录的数据,但未指定删除的是table1的记录。

修正后的SQL语句

直接在DELETE关键字后添加目标表的别名t1,明确指定要删除的是table1中的匹配记录:

delete t1
from table1 t1 
left join table2 t2 on t1.Id = t2.id 
where t2.id is null

如果不用别名,也可以直接写表名:

delete table1
from table1 
left join table2 on table1.Id = table2.id 
where table2.id is null

这两种写法都能实现你想要的逻辑:删除table1中与table2没有关联(t2.id为NULL)的记录。

内容的提问来源于stack exchange,提问作者Sri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 08:55:22