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

SQL数据库通配符咨询:删除含数字的BirthRule系列字段条目

如何用SQL通配符删除含数字的字段条目?

嘿,这个需求我经常碰到!要删除BirthRule、Birth1Rule、Birth2Rule、Birth3Rule这四个字段中内容包含数字的所有条目,你需要结合通配符和匹配操作符来实现,具体细节如下:

核心通配符选择

你需要用到两种关键的匹配符号:

  • %:匹配任意长度的任意字符(包括空字符),用来定位数字在字段中的任意位置(开头、中间、结尾都能覆盖)
  • [0-9]:匹配0到9之间的单个数字,属于范围类通配符,精准锁定数字字符

不过要注意:不同数据库对通配符的支持略有差异,比如MySQL默认不支持[0-9]搭配LIKE,这时候需要用正则匹配替代。

针对不同数据库的删除语句示例

1. SQL Server、PostgreSQL等支持范围通配符的数据库

直接用LIKE搭配%[0-9]%即可:

-- 先执行SELECT验证要删除的条目,避免误删!
SELECT * FROM 你的表名
WHERE BirthRule LIKE '%[0-9]%'
   OR Birth1Rule LIKE '%[0-9]%'
   OR Birth2Rule LIKE '%[0-9]%'
   OR Birth3Rule LIKE '%[0-9]%';

-- 确认无误后执行删除
DELETE FROM 你的表名
WHERE BirthRule LIKE '%[0-9]%'
   OR Birth1Rule LIKE '%[0-9]%'
   OR Birth2Rule LIKE '%[0-9]%'
   OR Birth3Rule LIKE '%[0-9]%';

2. MySQL数据库

MySQL中LIKE不支持[0-9],需要改用REGEXP(或RLIKE)来匹配数字:

-- 先验证
SELECT * FROM 你的表名
WHERE BirthRule REGEXP '[0-9]'
   OR Birth1Rule REGEXP '[0-9]'
   OR Birth2Rule REGEXP '[0-9]'
   OR Birth3Rule REGEXP '[0-9]';

-- 执行删除
DELETE FROM 你的表名
WHERE BirthRule REGEXP '[0-9]'
   OR Birth1Rule REGEXP '[0-9]'
   OR Birth2Rule REGEXP '[0-9]'
   OR Birth3Rule REGEXP '[0-9]';

重要提醒

永远先执行SELECT语句验证结果!删除操作是不可逆的,一定要确认筛选出来的条目确实是你想要删除的,再替换成DELETE执行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:17:46