一,默认的排序字段_score
_score
在elasticsearch中代表文档与搜索查询的匹配程度。
当执行一个搜索请求时,Elasticsearch会根据相关性得分_score
来排序返回的结果
如果想根据相关性得分 _score
来排序结果,可以在查询时指定 score
,并将其设置为 asc
或 desc
来指示升序或降序排序。
下面一个Elasticsearch查询示例演示了如何根据 _score
进行排序
GET /_search
{
"query": {
"match": {
"message": "elasticsearch"
}
},
"sort": [
{
"_score": {
"order": "asc"
}
}
]
}
如果想使用默认的排序,不需要在查询中指定任何排序参数。
例:下面的Elasticsearch查询将使用默认的排序方式:
GET /your_index/_search
{
"query": {
"match": {
"your_field": "your_query"
}
}
}
二,自定义排序字段
如果想要在查询中指定额外的排序条件,可以使用sort
参数。
例如,如果想要按照文档的date
字段排序,你可以这样写:
GET /your_index/_search
{
"query": {
"match": {
"your_field": "your_query"
}
},
"sort": [
{
"date": {
"order": "asc"
}
}
]
}
也可以指定多个排序字段,例如:
GET /your_index/_search
{
"query": {
"match": {
"your_field": "your_query"
}
},
"sort": [
{"date": {"order": "asc"}}, //第一排序
{"_score": {"order": "desc"}} //第二排序
]
}
标签:GET,查询,字段,score,query,排序,your,es From: https://www.cnblogs.com/architectforest/p/18323560