日期:2014-05-17  浏览次数:20865 次

求一个精确匹配的sql
相匹配一个字段中的字串,但要求这个字串前面一个字符不是数字

要查 xxxx6cc.. yyy16cc... zzz26cc...后面任意字符

如何能检索到只包含6cc的那条记录,但不包含16cc 26cc 这样的

检索 like %6cc% 这样的 16cc 26cc的也出来了

假设:表名为testTable 字段名为 modelname

------解决方案--------------------
SQL code

--暈,這樣應就可以了,被我搞復雜了
select * from testTable where regexp_like(modelname,'[^0-9]6cc');

------解决方案--------------------
探讨
SQL code


--暈,這樣應就可以了,被我搞復雜了
select * from testTable where regexp_like(modelname,'[^0-9]6cc');

------解决方案--------------------
SQL code

--是不支持,呵呵,這樣寫
select * from testTable where modelname like '%6cc%'
    and (instr(modelname,'6cc')=1 or (substr(modelname,instr(modelname,'6cc')-1,1) not between '0' and '9'));