【问题标题】:ElasticSearch won't sortElasticSearch 不会排序
【发布时间】:2013-08-06 14:28:30
【问题描述】:

我的 ElasticSearch 查询没有排序:

{
  "query": {
    "match_all": {}
  },
  "sort": [
    {
      "id": {
        "order": "desc"
      }
    }
  ]
}

添加“排序”没有任何效果,只是每个结果现在都有一个附加属性

sort: [0]

看起来“排序”属性为0,因此结果的顺序没有改变。

“id”是我索引中文档的实际属性。将其更改为“idFOOBAR”会引发“[没有为 [idFOOBAR] 找到映射以便排序]”,因此它似乎可以识别该属性。还尝试了其他属性,例如“userId”等,结果相同。

我错过了什么吗?

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    将属性映射从index="no" 更改为index="not_analyzed" 修复了它。

    【讨论】:

    • 我遇到了同样的问题。您能否解释一下您是如何更改属性映射的?这是ElasticSearch 节点的属性吗?
    • 没关系,我明白了。我创建了索引:POST <index> {"mappings": {"<type>": {"properties": {"<field>": {"type": "<type>", "index": "not_analyzed"}}}}。还是谢谢!
    猜你喜欢
    • 1970-01-01
    • 2023-03-10
    • 2015-01-23
    • 2020-01-26
    • 2017-04-13
    • 2018-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多