T-SQL SELECT查询:筛选以+385开头且后续首位非9的手机号码
T-SQL 筛选符合规则的手机号码解决方案
核心实现语句
直接用LIKE模式匹配即可完成需求,查询语句如下:
SELECT 手机号字段名 FROM 你的表名 WHERE 手机号字段名 LIKE '+385[^9]%';
匹配规则说明
+385严格匹配手机号码开头的固定前缀[^9]是T-SQL原生通配符规则,代表匹配任意一个不是9的字符,刚好对应前缀之后的第一位数字- 末尾的
%匹配后续任意长度的剩余号码字符
按索引定位的可选写法
如果你需要更明确地按字符下标校验(对应你提到的从0开始计数第4位不是9的要求),可以用SUBSTRING函数实现:
SELECT 手机号字段名 FROM 你的表名 WHERE LEFT(手机号字段名,4) = '+385' AND SUBSTRING(手机号字段名,5,1) != '9';
注意:T-SQL的字符串索引是从1开始计数的,所以从0开始计数的第4位,对应
SUBSTRING函数取数的第5个位置。
内容的提问来源于stack exchange,提问作者chelios
相关产品推荐
相关产品推荐

