在oracle的sql中,'_'通配一个字符,'%'通配任意个字符.如果想查找含有通配符的字段(即_和%),那么请用escape关键字告知oracle哪个字符是转义符. 例如:要查找abcd_def这样的值 select * from table where field like '%cd__d%' escape '_'
接上,也可以通过instr函数变通. 例如: 某字段含有 a,b,a_c,b_d这几个值,想查找出含有'_'的值,那么,这样写是可以的. select * from table where instr(field,'_')!=0 当然,这样写对于大数据量的查询会带来性能上的问题,这里只是提供解决问题的一个方法.
想查找“521._”的字符:select * from youtable where field like '521./_' ESCAPE '/';查找以“521.”开头的长度为5位的字符:select * from youtable where field like '521._';
例如:要查找abcd_def这样的值
select * from table where field like '%cd__d%' escape '_'
例如: 某字段含有 a,b,a_c,b_d这几个值,想查找出含有'_'的值,那么,这样写是可以的.
select * from table where instr(field,'_')!=0
当然,这样写对于大数据量的查询会带来性能上的问题,这里只是提供解决问题的一个方法.