1、常用
q- 查詢字串,這個是必須的。如果查詢所有*:*,根據指定字段查詢(name:張三 and address:北京
)
fq- (filter query)過慮查詢,作用:在q查詢符合結果中同時是fq查詢符合的,例如:q=name:張三&fq=createdate:[2014-06-18 to 2015-12-18],找關鍵字」張三」,並且createdate是查詢2014-06-18到2015-12-18之間的資料
fl- 指定返回那些字段內容,用逗號或空格分隔多個。
start- 返回第一條記錄在完整找到結果中的偏移位置,0開始,一般分頁用。
rows- 指定返回結果最多有多少條記錄,配合start來實現分頁。
sort- 排序,格式:sort=+[,+]… 。示例:(score desc, price asc)表示先 「score」 降序, 再 「price」 公升序,預設是相關性降序。
wt- (writer type)指定輸出格式,可以有xml,json,php,phps。
fl表示索引顯示那些field(*
表示所有
field,如果想查詢指定欄位用逗號或空格隔開(如:name,sku,shortdescription或name sku shortdescription【注:欄位是嚴格區分大小寫的】))
q.op表示q 中 查詢語句的 各條件的邏輯操作 and(與) or(或)
hl是否高亮 ,如hl=true
hl.fl高亮field ,hl.fl=name,sku
hl.snippets:預設是1,這裡設定為3個片段
hl.******.pre高亮前面的格式
hl.******.post高亮後面的格式
facet是否啟動統計
facet.field統計field
2、 solr運算子
1. 「:」 指定字段查指定值,如返回所有值*:*
2. 「?」 表示單個任意字元的通配
3. 「*」 表示多個任意字元的通配(不能在檢索的項開始使用*或者?符號)
4. 「~」 表示模糊檢索,如檢索拼寫類似於」roam」的項這樣寫:roam~將找到形如foam和roams的單詞;roam~0.8,檢索返回相似度在0.8以上的記錄。
5. 鄰近檢索,如檢索相隔10個單詞的」apache」和」jakarta」,」jakarta apache」~10
6. 「^」 控制相關度檢索,如檢索jakarta apache,同時希望去讓」jakarta」的相關度更加好,那麼在其後加上」^」符號和增量值,即jakarta^4 apache
7. 布林操作符and、||
8. 布林操作符or、&&
9. 布林操作符not、!、- (排除操作符不能單獨與項使用構成查詢)
10. 「+」 存在操作符,要求符號」+」後的項必須在文件相應的域中存在
11. ( ) 用於構成子查詢
12. 包含範圍檢索,如檢索某時間段記錄,包含頭尾,date:[200707 to 200710]
13. {} 不包含範圍檢索,如檢索某時間段記錄,不包含頭尾
date:
14. / 轉義操作符,特殊字元包括+ - && || ! ( ) [ ] ^ 」 ~ * ? : /
注:①「+」和」-「表示對單個查詢單元的修飾,and 、or 、 not是對兩個查詢單元是否做交集或者做差集還是取反的操作的符號
比如:ab:china +ab:america
,表示的是ab:china忽略不計可有可無,必須滿足第二個條件才是對的,
而不是你所認為的必須滿足這兩個搜尋條件
如果輸入:ab:china and ab:america,解析出來的結果是兩個條件同時滿足,即+ab:china and +ab:america或+ab:china +ab:america
3、 solr查詢語法
1.最普通的查詢,比如查詢姓張的人(name:張),如果是精準性搜尋相當於sql server中的like搜尋這需要帶引號(""),比如查詢含有北京的(address:"北京")
2.多條件查詢,注:如果是針對單個字段進行搜尋的可以用(name:搜尋條件加運算子(or、and、not) name:搜尋條件),比如模糊查詢(name:張 or name:李)單個欄位多條件搜尋不建議這樣寫,一般建議是在單個欄位裡進行條件篩選,如(name:張 or 李),多個字段查詢(name:張 + address:北京)
3.排序,比如根據姓名公升序(name asc),降序(name desc)
4.查詢結果匹配
例如 :http://localhost:8081/solr/select/?q=name:"蘇小小"&version=2.2&start=0&rows=10&indent=on&sort=cdate desc&hl=true&hl.fl=content
注意:如果在搜尋的目標上有一句話中包含這個關鍵字,那麼這段話也會被搜尋到,如:「很久很久以前蘇小小就是很出名了」。千萬不要以為只是關鍵字的內容才能搜尋到。
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...
solr引數說明
hight hl highlight,h1 true,表示採用高亮。可以用h1.fl field1,field2 來設定高亮顯示的字段。這些值都可以在select中加入,也可以用solrj的api去設定,也可以配置在solrconfig.xml中配置。示例如下 explicit 10true tit...