是否可以在LIKE运算符的左侧使用commodin?

时间:2013-10-14 13:13:11

标签: sql regex oracle11g sql-like

是否可以在左侧使用至少_,以便以下语句返回1:

SELECT 1 FROM DUAL WHERE
'te_ephone' like 'tele_ho%'

我希望oracle在解析右侧时解析左侧,使_匹配'any'char。
这是可能的还是有任何解决方法可以使这项工作?

为了给出一些背景信息,最终目标是remoñoson之类的内容与remonos%匹配。

左侧是我用_替换某些字符的列,而查询的开头是相同的替换。

1 个答案:

答案 0 :(得分:1)

根据您的上下文,您可以使用Linguistic Sort获得您期望的内容,其中提供了有关搜索语言字符串和排序的详细信息

示例1(不区分大小写或不区分重音的比较): -

SELECT word FROM test1
WHERE NLS_UPPER(word, 'NLS_SORT = XGERMAN') = 'GROSSE';

WORD
------------
GROSSE
Große
große

示例2使用正则表达式和基本字母运算符[==]: -

Oracle SQL语法:

SQL> SELECT col FROM test WHERE REGEXP_LIKE(col,'r[[=e=]]sum[[=e=]]');

Expression: r[[=e=]]sum[[=e=]]
Matches:
  
    

恢复

         

恢复

         

恢复

         

恢复