【发布时间】:2011-12-12 11:34:01
【问题描述】:
在 Oracle 中,我尝试在一列中查找所有包含一些变音符号的行。我使用了类似的东西: 其中 regexp_like(name,'(Ă|Î|Ș|Ț|Â)','i');
问题在于它还返回包含不带变音符号 (A,I,S,T) 的字母的行。例如,上面的子句将返回包含“Adrian”作为名称的行。 如何只搜索变音符号?
谢谢
【问题讨论】:
标签: oracle search diacritics
在 Oracle 中,我尝试在一列中查找所有包含一些变音符号的行。我使用了类似的东西: 其中 regexp_like(name,'(Ă|Î|Ș|Ț|Â)','i');
问题在于它还返回包含不带变音符号 (A,I,S,T) 的字母的行。例如,上面的子句将返回包含“Adrian”作为名称的行。 如何只搜索变音符号?
谢谢
【问题讨论】:
标签: oracle search diacritics
在比较和排序中处理变音符号的方式是会话的属性,取决于 NLS_SORT 的值。见Linguistic Sorting and String Searching
【讨论】:
我认为可能是字符转换引起的。 运行查询时会得到什么?:
select 'ĂÎȘȚÂ' from dual
【讨论】: