Sql Informix不区分重音的搜索

Sql Informix不区分重音的搜索,sql,informix,diacritics,Sql,Informix,Diacritics,是否有任何方法(函数、配置选项等)强制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 据我所知,不是直接地谢谢你。您可以安装。使用它的功能。将查询替换为以下内

是否有任何方法(函数、配置选项等)强制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

据我所知,不是直接地谢谢你。您可以安装。使用它的功能。将查询替换为以下内容:

where regexp_match(name , 'concei[çc][ãa][o]%')
或者,如果您没有该选项,我会添加另一个“normalized_name”列。将所有重音字符替换为“标准”字符。然后在此基础上查询我的表

name='conceiçao santos',normalized_name='conceicao santos'


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

哪种风格(IDS、XPS)和Informix版本?我们曾考虑使用规范化列,但由于系统的大小和必须完成的列数,这是最后一个资源选项。我刚刚发现Informix有一个MATCHES子句,类似于LIKE,我可以使用它来执行您对regexp_match的建议,我们可能会使用它。尽管如此,更改所有查询仍需要大量的工作,如果Informix为重音不敏感的搜索提供了一个全局选项,那就太好了。我错过了关于MATCHES操作符的部分。它是内置的。它确实有全球语言支持(GLS),但我不认为它会做你需要它做的事情。我为波多黎各的典当行开发了一个isql应用程序。我升级了所有alpha数据输入,并使用了英文字符集,以避免查询、排序顺序和必须按额外键的问题!isql 4.10没有GLS,如果遇到非英语字符,isql会咳嗽!使用英语也简化了事情,它是全球商业语言!