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

编写Oracle SQL查询找出含特殊字符的电话号码

查找含特殊字符的电话号码(Oracle SQL)

要筛选出包含非数字特殊字符的电话号码,你可以用Oracle的正则表达式函数REGEXP_LIKE实现,以下是两种实用写法:

写法一:筛选非纯数字的记录

SELECT phone_number
FROM your_table_name
WHERE NOT REGEXP_LIKE(phone_number, '^[0-9]+$');

逻辑:^[0-9]+$匹配从开头到结尾全是数字的字符串,加上NOT就会筛选出不符合该规则的记录,也就是含特殊字符的异常号码。

写法二:直接匹配含非数字的记录

SELECT phone_number
FROM your_table_name
WHERE REGEXP_LIKE(phone_number, '[^0-9]');

逻辑:[^0-9]表示匹配任何不是0-9的字符,只要电话号码里存在这类字符,就会被筛选出来。

补充说明

如果你的表中存在空值的电话号码,可添加条件排除空记录:

-- 以写法二为例
SELECT phone_number
FROM your_table_name
WHERE phone_number IS NOT NULL
  AND REGEXP_LIKE(phone_number, '[^0-9]');

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 03:01:00