您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Elasticsearch:如何搜索,排序,限制结果然后再次排序?

Elasticsearch:如何搜索,排序,限制结果然后再次排序?

热门匹配汇总可让您price根据主查询的排序方式(在上distance)对单独的字段进行排序。请参阅此处的文档,了解如何在热门匹配agg中指定排序。

看起来有点像这样(假定distance是双重类型;如果是地理位置类型,请使用Volodymyr Bilyachat提供的文档。)

{
   "sort":[
      {
         "distance":"asc"
      }
   ],
   "query":{
      "match_all":{}
   },
   "size":50,
   "aggs":{
      "top_price_hits":{
         "top_hits":{
            "sort":[
               {
                  "price":{
                     "order":"asc"
                  }
               }
            ],
            "size":50
         }
      }
   }
}

但是,如果主要查询只需要50个结果,为什么不只在应用程序客户端排序呢?这将是一种更好的方法,因为将热门匹配用作次要排序是对其目的的轻微滥用。

应用程序内方法将更强大。

其他 2022/1/1 18:18:21 有530人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶