2

是否有任何方法(函数、配置选项等)强制informix 忽略搜索时的重音符号?

例子:

select id, name from user where name like 'conceição%'

回报:

1    |    conceicao oliveira
2    |    conceiçao santos
3    |    conceicão andrade
4    |    conceição barros

谢谢

4

1 回答 1

2

不是直接的,我知道。您可以安装Regex DataBlade 模块。使用它的regexp_match函数。用这样的东西替换查询:

where regexp_match(name , 'concei[çc][ãa][o]%')

或者,如果您没有该选项,我会添加另一个“normalized_name”列。用“标准”字符替换所有重音字符。然后据此查询我的表。

name='conceicao santos', normalized_name='conceicao santos'

添加规范化列还将确保您不依赖任何模块或任何特定数据库。

于 2012-07-20T18:42:13.667 回答