es的排序同sql,可以desc也可以asc。也支持组合排序。

POST    http://10.0.0.220:9200/shop/_doc/_search

{
	"query":{
		"match":{
			"desc":"我男人"
		}
	},
	"sort":[
		{
			"age":"desc"
		},{
			"money":"asc"
		}
	]
}

 



对文本排序
由于文本会被分词,所以往往要去做排序会报错,通常我们可以为这个字段增加额外的一个附属属性,类型为keyword,用于做排序。

POST        http://10.0.0.220:9200/shop2/_mapping

{
    "properties": {
        "id": {
            "type": "long"
        },
        "nickname": {
            "type": "text",
            "analyzer": "ik_max_word",
            "fields": {
                "keyword": {
                    "type": "keyword"
                }
            }
        }
    }
}


排序方式:

{
	"sort":[
		{
			"nickname.keyword":"desc"
		}
	]
}

 

最后修改于 2020-04-07 16:31:27
如果觉得我的文章对你有用,请随意赞赏
扫一扫支付
上一篇