在线等(急):手机号码类型匹配(ORACLE数据库)

在oracle中匹配手机号码类型:如号码中包涵8888(不一定是尾数可能在中间)的匹配为AAAA;包涵1234的匹配为ABCD
上述示例只是其中一种情况而已:有可能是4个8也有可能是4个6或是1,还有可能是5连号,意思就是区分手机号码靓号类型。

第1个回答  2015-08-20
select replace(phoneNum ,'8888','AAAA'),replace(phoneNum,'1234','ABCD') from tableName where 1=1追问

需要适应各种变化情况,匹配结果单独输出一列

追答

思路是这样的,应该是用这个方法。具体的各种变化,需要你自己分析。
是在不行就放到程序中实现,不在数据库中实现。

追问

呵呵

追答

select replace('123888812323' ,regexp_substr('123888812323', '(\d)\1{2,}') ,'AAAA'),replace('23434341234','1234','ABCD') from dual where 1=1
连续数字的我还没想好

第2个回答  2015-08-20
Select*from table_* where phone_number like '%8888%';
第3个回答  2015-08-20
没看懂是什么意思
相似回答