对ElasticSearch中的字符串数组进行排序

时间:2013-04-04 10:37:36

标签: elasticsearch

我正在使用以下内容对Elasticsearch中具有“usernamesAssigned”属性的文档进行排序。 usernamesAssigned是一个字符串数组:

"sort": [
    {
        "_script": {
            "script": "doc["usernamesAssigned"].values.sort().join()",
            "type": "string",
            "lang": "js",
            "order": "asc"
        }
    }
]

我想知道在不使用基于脚本的排序的情况下是否有更有效的方法来执行此操作?

1 个答案:

答案 0 :(得分:3)

这是一个老问题,但我最近在试图解决同样的问题时徘徊......

根据documentation

  

Elasticsearch支持按数组或多值字段进行排序。该   mode选项控制选择哪个数组值进行排序   它属于的文件。

所以,你应该能够这样排序:

require(:post)

自版本0.90.0.Beta1以来一直可用。