ElasticSearch多个字段的排序顺序

时间:2015-04-22 15:21:50

标签: elasticsearch

为多个字段指定sort order in ElasticSearch的最佳方法是什么?查询字符串格式似乎根本不起作用:

http://elasticsearch_url/index/_search?sort=field1:asc&sort=field2:desc&size=100

有人想首先按field1,然后按field2排序,但只有一个字段似乎正确排序。完整的符号效果更好,但第一个条目偶尔会出现错误的搜索顺序:

curl -s -XGET http://elasticsearch_url/index/_search -d '
{
    "sort": [
        { "field1": { "order": "desc" }},
        { "field2": { "order": "desc" }}
    ],
    "size": 100
}'

1 个答案:

答案 0 :(得分:3)

显然,第二个完整的符号效果更好。

另一个问题是其中一个字段包含url,这是由ElasticSearch以奇怪的方式解析的。即使是正常的string fields也很难排序,indexing a url in ElasticSearch甚至更难。