solr查詢語法

2021-07-22 12:08:05 字數 2185 閱讀 5100

區間範圍查詢

// 組合**區間條件  

if (minprice.intvalue() != 0 || maxprice != 0)   

1. 首先假設我的資料裡fields有:name, subbranch, tel, address 預設的搜尋是name這個字段, 如果要搜尋的資料剛好就是 name 這個字段,就不需要指定搜尋欄位名稱. 

2. 查詢規則: 

如欲查詢特定字段(非預設字段),請在查詢詞前加上該欄位名稱加 「:」 (不包含」號) 符號, 

例如: address:台北台北市中正區重慶南路一段***號 tel:23***xx1

1. q代表query input 

2. version代表solr版本(建議不要變動此變數) 

3. start代表顯示結果從哪一筆結果資料開始,預設為0代表第一筆, rows是說要顯示幾筆資料,預設為10筆 

(因為有時查詢結果可能有幾百筆,但不需要顯示所有結果,所以預設是從第一筆開始到第十筆) 

所以若要顯示第10到30筆就改為: 

http: //localhost:8080/solr/select/?indent=on&version=2.2&q=address:台北 台北市中正區重慶南路一段***號+tel:23***xx1&version=2.2&start=10&rows= 20&indent=on 

4. indent代表輸出的xml要不要縮行.預設為開啟 on

5. 另外,要限定輸出結果的內容可用 「fl=」 加上你要的欄位名稱,如以下這個範例: 

http: //localhost:8080/solr/select/?indent=on&version=2.2&q=text:**府+ or+text:郵局&start=0&rows=10&fl=name,subbranch,tel 

在fl=之後加上了name,subbranch,tel 

所以結果會如下: 

**府郵局

台北15支

23******9

**府23******1

3. 查詢 name 或 subbranch:直接輸入查詢詞, 如: 7-eleven 忠孝店 

送出的內容即為: 

name:7-eleven and subbrahch:忠孝店

4. 若要搜尋聯集結果,請在詞與詞間空格或加上大寫 「or」 (不包含」號). 

例如: text:**府 or text:郵局 

text:**府 or 郵局 

或 **府 郵局 

或 name:**府 or tel:23******3 

或 name:**府 tel:23******3

5. 若要搜尋交集結果,請在詞與詞間加上大寫 「and」 或 「+」 (不包含」號). 

例如: text:**府 and text:郵局 

或 +text:**府 +text:郵局 

或 name:**府 and tel:23******3 

或 name: ( +**府 +郵局)

6. 排除查詢 

在要排除的詞前加上 「-」 (不包含」號) 號 

例如: **府 -郵局 

搜尋結果不會有包含郵局的詞的結果在內

7. group 搜尋 

使用 「()」 來包含乙個group 

如希望搜尋在店名字段內同時有 「台北」(不包含」號) 及 「火車站」(不包含」號)

8. 增加權重: 如要搜尋 「中華 加油站」(不包含」號) 但因為回傳太多筆資料內有 「中華」(不包含」號) 或 「加油站」(不包含」號) 的結果, 

所以想要把有包含 「加油站」(不包含」號)的資料往前排,可使用 「^」(不包含」號)符號在後面加上愈增加的權重數, 

像是 「2″,則可以這樣做:

中華 加油站^2

會同時搜尋含有中華或加油站的結果,並把加油站這個詞加權所以搜尋時會先判斷加油站這乙個詞在 

搜尋結果中的比重,甚至假設一筆資料內加油站出現過兩次以上的就更加會有優先權.

查詢時在查詢詞後加上 「^」 (不包含」號) 再加上權重分數 

例如: **府 and 「郵局」^2 

或 **府^2 or 郵局

9. wildcard 搜尋使用 「*」 符號; 如果輸入 「中國*銀」 (不包含」號), 結果會有中國信託商業銀行, 中國輸出入銀行圖書閱覽室, 中國商銀** 

中國及銀之間可夾任何長短字詞.

solr查詢語法

首先假設我的資料裡fields有 name,subbranch,tel,address 預設的搜尋是name這個字段,如果要搜尋的資料剛好就是 name 這個字段,就不需要指定搜尋欄位名稱.2.查詢規則 如欲查詢特定字段 非預設字段 請在查詢詞前加上該欄位名稱加 不包含 號 符號,例如 addres...

Solr 查詢語法

摘要 預設的solr查詢語法擴充套件了lucene的語法,其目的也就是檢索索引。solr的查詢用到了引數q,標準的查詢語法就想下面這樣 可以使用debug query來分析查詢過程 debug 一般來說,response會包含匹配程度最好的文件,但是上面例子中,沒有文件滿足這一查詢。在debug資訊...

solr查詢語法

配置好solr後,可以通過web管理介面進行管理和查詢。web介面基本列出了大多數查詢引數,可以通過這個學習lucene的查詢語法。solr的查詢解析是通過queryparser來配置的 solrconfig.xml 一般我們用預設的即可。其各引數含義與用法簡單解釋如下 q 查詢輸入,必須。可以使用...