Solr查詢引數sort(排序)

2021-09-07 19:31:45 字數 1005 閱讀 8377

摘要:solr查詢每一次返回的資料都有一定的順序,特定順序的結果對於業務來說可能非常重要。

一般我們不指定排序規則,這樣的結果能滿足大部分需求,預設是用文件的得分作為排序標準。相當於加上了引數sort=score desc,這裡的score是solr的乙個隱藏字段,衡量這個文件對於該查詢引數的權重。使用如下的http查詢請求:

返回資料:

}, "response":, ... ] } }

有乙個socre的filed,所有score值為1,是因為我返回了所有資料,它們的權重都相同。

有時候,我們只關心某一字段,希望返回的資料根據這一字段排序。例如,我想查詢所有書籍中比較便宜的書籍。可以使用查詢引數sort=price_s asc,使用如下的http查詢請求:

返回資料:

}, "response":, ... ] } }

有時候,我希望返回的資料先按權重排序,再按某一filed排序,那麼可以使用多個field來排序,此時按第乙個排序引數排序,如果第乙個引數不能區分順序,則按第二個引數排序。對於某次查詢,我希望先按權重排序,權重相同則按**排序,那麼,查詢引數可以為sort=score desc, price asc

有時候,排序規則可能需要兩個filed的值做數**算。比如,有一次排序基於兩個欄位的和,可以使用這樣的查詢引數sort=sum(x_d, y_d) desc(這裡的x欄位和y欄位都為double型別)。

Solr查詢引數echoParams

摘要 引數echoparams用來控制返回的responseheader裡包含哪些資訊。引數echoparams有3個可選的值 引數值含義 explicit 預設值。包含所有指定的請求引數,再加上引數 all包含所有對查詢有用的引數,包含一些在solrconfig.xml中預定義的引數和 none ...

solr查詢引數說明

查詢規則 查詢特定字段,比如我需要找分類下的book,你可以寫成這樣 cat book q 表示查詢規則 wt 表示以什麼樣的資料格式返回 有xml json python php ruby等 indent 表示是否縮排,模式為true表示縮排 start 表示從第幾條記錄開始,與rows聯合可以用...

solr 查詢引數說明

1 常用 q 查詢字串,這個是必須的。如果查詢所有 根據指定字段查詢 name 張三 and address 北京 fq filter query 過慮查詢,作用 在q查詢符合結果中同時是fq查詢符合的,例如 q name 張三 fq createdate 2014 06 18 to 2015 12...