我在oracle 11g上运行plsql developer。
我的选择与返回结果一样(字符虽然我没有请求
SELECT * FROM TableA a where a.cofiguration like '%a_mobile_sw';
它还返回包含值a_mobile_sw和a_mobile(sw
)的配置记录它如何以'('字符在里面但是没有请求返回记录?
答案 0 :(得分:2)
如果您正在搜索下划线字符,则需要将其转义,如下所示:
SELECT *
FROM TableA a
where a.cofiguration like '%a\_mobile\_sw' escape '\';
通过like
比较,%
是一个多字符外卡,而_
是一个单字符外卡,这就是您看到奇怪结果的原因。通过转义下划线,您告诉Oracle将其视为下划线而不是外卡。