我们之前查询出的结果都会有一个_score分值表示列出结果与搜索结果的相关性,该值越高排序位置越靠前,es具体是如何计算该值的,我们认真来看看。
1、根据字段值排序
比如我们要查询/index5下subject.subject-name匹配关键字"computer"的内容,并且根据subject.id字段做倒序排序
其实这个查询相当于关系型数据库查询:select * from index5 where subject.subject-name like '%computer%' order by subject.id desc;
我们反过来想,如果不指定排序字段,es怎么排序?他会根据我们查询的字段做倒序排序。
2、多级排序
这里排序条件有两个,subject.id ,_score两个
3、字符串参数排序
其实就是在请求连接上添加需要排序的字段描述