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

如何在MySQL中组合DELETE过滤条件删除双条件匹配的记录

解决MySQL多条件删除问题

你当前的操作逻辑有误:分开执行两个DELETE语句时,第一个会删除所有sale_id在7970到9805之间的记录(完全不考虑total的值),第二个会删除所有total在200到850之间的记录(完全不考虑sale_id的值),这就把只满足单个条件的记录也误删了,不符合你要同时满足两个条件的需求。

正确的做法是用AND将两个条件合并到同一个DELETE语句中,这样只会删除同时符合两个条件的记录:

DELETE FROM `fin_sales` 
WHERE `sale_id` BETWEEN 7970 AND 9805 
  AND `total` BETWEEN 200 AND 850;

为了避免误删,建议先执行SELECT语句验证目标记录是否正确:

SELECT * FROM `fin_sales` 
WHERE `sale_id` BETWEEN 7970 AND 9805 
  AND `total` BETWEEN 200 AND 850;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 03:07:07