Solr7.1---簡單搜索


本文環境基於上一節。

 

and搜索

兩種用法:

apple AND banana

+apple +banana

 

 【+是一元操作符,要求求后面的查詢部分必需在文檔中出現。AND是二元操作符,要求其左右兩端的查詢部分必需同時出現。交集】

 示例:

 

 OR搜索

兩種用法:

apple banana

apple OR banana

【Solr默認查詢詞之間是OR運算,無需指定參數。OR是二元運算符,要求左右兩端的查詢詞至少出現一個。並集】

示例:

排除詞項

 

兩種用法:

apple banana -pie

apple banana NOT pie

 

【在匹配apple和banana的文檔中刪除包含pie的文檔】 

 示例:

如果我不包含look

短語

 

用法:

可以使用其他運算符,僅僅把單個詞換成短語

 

示例:

組合表達式

 

終極奧義!!你可以胡亂組合成別人看不懂的查詢,提升你的逼格!!!

apple AND (apricot OR (banana NOT banana-skin))

(+(red blue -green) +(white yellow -(+pink -black)))

 

 

模糊匹配-通配符

 

【*】匹配多個字符

【?】匹配一個字符

 

例如:

【注意:雖然通配符功能強大,但是使用不當會花銷巨大。!!在通配符之前指定的字符越多,查詢速度越快(lov*)!!執行首位通配符會花銷巨大(*ing)!!】

另外,通配符只適用於單個查詢詞,不適合短語!!

模糊匹配-區間

 

例如:查詢8到21歲的人

age:[8 TO 21]

 

示例:

 

模糊匹配-編輯距離搜索

 這一部分對用戶輸入的文本進行細微修正。

Solr使用~來表示模糊編輯距離搜索。

查詢rea~匹配reason,mean等。

指定編輯距離:

rea~1 匹配1個以內的編輯距離

rea~2 匹配2的以內的編輯距離,這是默認的

rea~N 匹配N個以內的編輯距離

 

示例:我故意把reason寫錯

 

模糊匹配-臨近距離搜索

 

查詢:"apple banana"~1  apple和banana之間最多間隔1個詞

查詢:"apple banana"~2  apple和banana之間最多間隔2個詞

查詢:"apple banana"~N  apple和banana之間最多間隔N個詞

 

示例:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM