【Oracle】使用like的时候遇到的问题
like语句其中的%就代表着一个零或者多个字符,_代表一个字符,%与_可以同时使用
name想查询以‘_’结尾的字符
用这个语句就会有问题
select count(1) from dual where '底壳组件.pdf' like '%_'
LIKE语句与多个下划线一样可以匹配出来数据,一般遇到特殊字符的话,可以使用ESCAPE转义字符来匹配数据字段,并将它查询出来
用下面语句就没问题
select count(1) from dual where '底壳组件.pdf' like '%e_' ESCAPE 'e'
但是这种方式只能对特殊字符,如果想查询‘f’结尾的字符
用下面语句就会报错
select count(1) from dual where '底壳组件.pdf' like '%ef' ESCAPE 'e'
因此,为了通用性,在Oracle中,最好使用下面的语句
select count(1) from dual where Substr('底壳组件.pdf',-1) = '_'
这样大部分的情况都是兼用的
标签:语句,count,like,遇到,底壳,dual,Oracle,select From: https://www.cnblogs.com/jokingremarks/p/18058355