无论才能、知识多么卓著,如果缺乏热情,则无异纸上画饼充饥,无补于事。

es 5.6 中文按拼音排序

Elasticsearch | 作者 EdenChan | 发布于2017年10月31日 | 阅读数:7734

目前如果在 5.6 版本的查询参数中使用 "sort":{"[ 字段名 ].keyword":"asc"} 这种方式可以进行 text 类型字段排序,但是当字段中存放了中文时,似乎是仍然是按照 utf8 的方式进行排序的,这样会导致中文的内容无法按照拼音顺序排序。

在 mysql 里面进行类似操作的时候,如果字段的字符集是 utf8 , 可以使用 convert([ 字段名 ] using gbk) 的方式解决,但是在 es 里面有类似的方式吗?或者可在建索引的时候指定字符集吗?
已邀请:

medcl - 今晚打老虎。

赞同来自:

建索引的时候使用一个新的子 field 字段,该字段用 pinyin analyzer,就可以按这个字段排序了。
https://github.com/medcl/elast ... nyin/

liuliuliu

赞同来自:

都试过了,没有实现按中文拼音排序!!!!

要回复问题请先登录注册