ElasticSearch 不会排序

标签 elasticsearch

我的 ElasticSearch 排序查询未排序:

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

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

sort: [0]

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

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

我错过了什么吗?

最佳答案

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

关于ElasticSearch 不会排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18065667/

相关文章:

elasticsearch - 自定义模式

elasticsearch - 无法通过kubernetes入口调用外部资源

sql - 高效计算 SQL 中的重要术语

django - 从Django View 中写入 Elasticsearch

ruby-on-rails - Elasticsearch排序选项不受支持

ElasticSearch 创建索引,索引已经存在异常

Ubuntu - Elasticsearch - 错误 : Cannot allocate memory

elasticsearch - Elasticsearch在别名中维护唯一的_id

mongoDB 与 elasticsearch 查询/聚合性能比较

Elasticsearch 空闲存储空间大幅减少