:::tips ElasticSearch默认是根据相关度算分(_score)来排序,同时也支持自定义方式对搜索结果排序,可以排序字段类型有:keyword类型、数值类型、地理坐标类型、日期类型等 :::
普通字段排序
:::tips 普通字段排序中keyword、数值、日期类型排序的语法基本一致 :::
GET /索引库名/_search{"query": {"match_all": {}},"sort": [{"字段名": "排序方式" //指定排序字段和排序方式,排序方式:ASC、DESC}]}
地理坐标排序
:::tips 地理坐标排序:
- 指定一个坐标,作为目标点
 - 计算每一个文档中指定字段(必须是geo_point类型)的坐标到目标点的距离
 - 根据距离排序
:::
GET /索引库名/_search{"query": {"match_all": {}},"sort": [{"_geo_distance" : {"字段名" : "纬度,经度", //文档中geo_point类型的字段名 经纬度"order" : "排序方式", //指定排序方式,排序方式:ASC、DESC"unit" : "距离单位" //排序的距离单位:m、km...}}]}
 
