99re热这里只有精品视频,7777色鬼xxxx欧美色妇,国产成人精品一区二三区在线观看,内射爽无广熟女亚洲,精品人妻av一区二区三区

Solr函數(shù)查詢的使用

2018-11-23 15:12 更新

Solr 函數(shù)查詢使您能夠使用一個(gè)或多個(gè)數(shù)字字段的實(shí)際值生成相關(guān)性分?jǐn)?shù)。

Solr 函數(shù)查詢由 DisMax、Extended DisMax 和標(biāo)準(zhǔn)查詢解析器支持。

Solr 函數(shù)查詢使用函數(shù)。函數(shù)可以是常量(數(shù)字或字符串文字)、字段、另一個(gè)函數(shù)或參數(shù)替換參數(shù)。您可以使用這些函數(shù)來修改用戶結(jié)果的排名。這些可用于根據(jù)用戶的位置或其他計(jì)算來更改結(jié)果的排序。

使用函數(shù)查詢

函數(shù)必須表達(dá)為函數(shù)調(diào)用(例如,sum(a,b) 而不是簡(jiǎn)單地 a+b)。

在 Solr 查詢中有幾種使用函數(shù)查詢的方法:

  • 通過一個(gè)明確的 QParser,期望函數(shù)參數(shù),例如 func 或 frange:
    q={!func}div(popularity,price)&fq={!frange l=1000}customer_ratings
  • 在一個(gè) Sort 表達(dá)式中。例如:
    sort=div(popularity,price) desc, score desc
  • 將函數(shù)的結(jié)果作為偽字段(pseudo-fields)添加到查詢結(jié)果中的文檔。例如,對(duì)于:
    &fl=sum(x, y),id,a,b,c,score

    輸出將是:

    ...
    <str name="id">foo</str>
    <float name="sum(x,y)">40</float>
    <float name="score">0.343</float>
    ...
  • 用于顯式指定函數(shù)的參數(shù),如 EDisMax 查詢解析器的 boost 參數(shù)或 DisMax 查詢解析器 bf(boost 函數(shù))參數(shù)。(請(qǐng)注意,bf 參數(shù)實(shí)際上是用空格分隔的函數(shù)查詢列表,每個(gè)函數(shù)都有一個(gè)可選的提升函數(shù),確保在使用 bf 時(shí),一定要消除單個(gè)函數(shù)查詢中的任何內(nèi)部空白)。例如:
    q=dismax&bf="ord(popularity)^0.5 recip(rord(price),1,1000,1000)^0.3"
  • 在 lucene QParser 中用 _val_ 關(guān)鍵字在內(nèi)聯(lián)中引入一個(gè)函數(shù)查詢。例如:
    q=_val_:mynumericfield _val_:"recip(rord(myfield),1,2,3)"

建議只使用具有快速隨機(jī)訪問功能的函數(shù)。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)