0
我上的Oracle 11g运行PLSQL开发者选择。用像返回的结果(字符
我的选择与像返回的结果与(字符虽然我没有要求
SELECT * FROM TableA a where a.cofiguration like '%a_mobile_sw';
也返回记录与配置与价值a_mobile_sw也a_mobile(SW
它是如何与“(”字符返回记录里面虽然没有要求?
我上的Oracle 11g运行PLSQL开发者选择。用像返回的结果(字符
我的选择与像返回的结果与(字符虽然我没有要求
SELECT * FROM TableA a where a.cofiguration like '%a_mobile_sw';
也返回记录与配置与价值a_mobile_sw也a_mobile(SW
它是如何与“(”字符返回记录里面虽然没有要求?
如果你搜索的下划线,你需要逃避它,就像这样:
SELECT *
FROM TableA a
where a.cofiguration like '%a\_mobile\_sw' escape '\';
随着like
比较,%
是一个多字符外卡,并且_
是单个字符外卡,这就是为什么你看到奇怪的结果。通过转义下划线,您告诉Oracle将其视为下划线而不是通配符。
使用'LIKE'时,下划线匹配任何单个字符。 –
我敢打赌你意外地发现了不好的数据。当然''a_mobile(sw''不是一个正确的配置名称?你可能只是想留下下划线为了突出这个问题!:-)至少做一个不同的列,看看是否有其他那里有不好的名字,然后把它带给别人注意,成为数据清理英雄。 –