如何对一个重音字符的SQL进行比较?

Pen*_*m10 2 sql sqlite android normalization

我有两个SQLite表,我很乐意在名称列上加入它们.此列包含重音字符,所以我想知道如何比较它们的连接.我希望减少重音以便进行比较.

mdm*_*dma 8

您可以使用排序规则来影响字符的比较(例如忽略大小写,忽略重音).虽然您可以添加自己的排序规则,但SQLLite只有少数内置排序规则.

编辑:鉴于Android支持UDF和计算列似乎值得怀疑,这是另一种方法:

  • 向表中添加另一列normalizedName
  • 当您的应用向表中写出行时,它会对名称本身进行规范化,删除重音并执行其他更改.它将结果保存在normalizedName中.
  • 您在连接中使用normalizedName.

由于规范化函数现在在java中,因此编码时应该没有什么限制.这里给出几个用于删除java中重音的示例.