Elasticsearch——》默认排序 & 自定义排序
程序员文章站
2024-02-28 12:27:58
...
请参考:总结——》【Elasticsearch】
系统System
:Linux版本version
:elasticesearch7.6根目录rootPath
:/opt/app/elasticesearch7.6
一、默认排序
默认情况下,是按照
_score降序
排序的
GET goods/_search
{
"from": 0,
"size": 20,
"query": {
"bool": {
"must": [
{
"term": {
"status": {
"value": 1,
"boost": 1
}
}
}
]
}
}
}
二、自定义排序
在
sort
参数里,指定字段
作为排序条件
GET goods/_search
{
"from": 0,
"size": 20,
"query": {
"bool": {
"must": [
{
"term": {
"status": {
"value": 1,
"boost": 1
}
}
}
]
}
},
"sort": [
{
"putSaleTime": {
"order": "desc"
}
}
]
}
1、现象
在
sort
参数里,指定字段
作为排序条件,搜索结果中_score
字段为null
2、解决
在
sort
参数里增加_score
字段排序
GET goods/_search
{
"from": 0,
"size": 20,
"query": {
"bool": {
"must": [
{
"term": {
"status": {
"value": 1,
"boost": 1
}
}
}
]
}
},
"sort": [
{
"putSaleTime": {
"order": "desc"
}
},
{
"_score":{
"order": "desc"
}
}
]
}
上一篇: java实现顺时针打印矩阵
下一篇: java实现转圈打印矩阵算法