我們之前查詢出的結果都會有一個_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、字符串參數排序
其實就是在請求連接上添加需要排序的字段描述