sphinx在文本unicode字段中使用sql_attr_str2ordinal进行排序

时间:2012-08-27 14:08:37

标签: sphinx

我正在使用sql_attr_str2ordinal作为文本字段,所以我可以进行排序。我已经阅读了解释它如何工作的文档。(使用字节等...)如果我理解正确的话,就不可能按区域设置对文本字段进行排序?如何实现这一目标?

排序示例(查找č字母): 错误的排序: 一个 b C d Ë 。 。 。 ž ç

正确排序: 一个 b C C d Ë 。 。 。 ž

来自docs:

  

理想情况下,字符串应按不同方式排序,具体取决于   编码和区域设置。例如,如果已知字符串   KOI8R编码中的俄语文本,对字节0xE0,0xE1和0xE2进行排序   应该产生0xE1,0xE2和0xE0,因为在KOI8R值0xE0   编码由字符编码后的字符(显着)   0xE1和0xE2。不幸的是,Sphinx并不支持   时刻,将简单地按字节顺序排序。

1 个答案:

答案 0 :(得分:1)

您现在可以使用字符串属性进行排序。

有用于实现此目的的排序规则设置。 http://sphinxsearch.com/docs/current.html#collations

str2ordinal中的文档尚未更新以记录它。