1

我将 sql_attr_str2ordinal 用于文本字段,所以我可以进行排序。我已经阅读了解释它如何工作的文档。(使用字节等......)如果我理解正确,就不可能按语言环境对文本字段进行排序?怎么可能做到这一点?

排序示例(查找 č 字母):错误排序:a b c d e 。. . z

正确排序: a b c č d e 。. . z

来自文档:

理想情况下,应根据编码和语言环境对字符串进行不同的排序。例如,如果已知字符串是 KOI8R 编码中的俄语文本,那么对字节 0xE0、0xE1 和 0xE2 进行排序应该会产生 0xE1、0xE2 和 0xE0,因为在 KOI8R 中,值 0xE0 编码的字符(明显)在由0xE1 和 0xE2。不幸的是,Sphinx 目前不支持,只会按字节对字符串进行排序。

4

1 回答 1

1

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

有排序规则设置来实现这一点。 http://sphinxsearch.com/docs/current.html#collat​​ions

str2ordinal 中的文档尚未更新以说明它。

于 2012-08-27T19:53:02.690 回答