solr的一些查询语法

Solr lucene query 使用方法初級解說



1.
首先假設我的資料裡fields:name, subbranch, tel, address 預設的搜尋是name這個欄位, 如果要搜尋的資料剛好就是 name 這個欄位,就不需要指定搜尋欄位名稱.
2.
查詢規則:
如欲查詢特定欄位(非預設欄位),請在查詢詞前加上該欄位名稱加 “:” (不包含) 符號,
例如: address:台北台北市中正區重慶南路一段xxx tel:23xxxxx1

1. q
代表query input
2. version
代表solr版本(建議不要變動此變數)
3. start
代表顯示結果從哪一筆結果資料開始,預設為0代表第一筆, rows是說要顯示幾筆資料,預設為10
(
因為有時查詢結果可能有幾百筆,但不需要顯示所有結果,所以預設是從第一筆開始到第十筆)
所以若要顯示第1030筆就改為:
http: //localhost:8080/solr/select/?indent=on&version=2.2&q=address:
台北 台北市中正區重慶南路一段xxx+tel:23xxxxx1&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
所以結果會如下:
<result name=”response” numFound=”1340″ start=”0″>
<doc>
<str name=”name”>
總統府郵局</str>
<str name=”subbranch”>
台北15</str>
<str name=”tel”>23xxxxxx9</str>
</doc>

<doc>
<str name=”name”>
總統府</str>
<str name=”subbranch”/>
<str name=”tel”>23xxxxxx1</str>
</doc>
</result>

3.
查詢 name subbranch:直接輸入查詢詞, : 7-eleven 忠孝店
送出的內容即為:
name:7-eleven AND subbrahch:
忠孝店

4.
若要搜尋聯集結果,請在詞與詞間空格或加上大寫 “OR” (不包含).
例如: text:總統府 OR text:郵局
text:
總統府 OR 郵局

總統府 郵局

name:
總統府 OR tel:23xxxxxx3

name:
總統府 tel:23xxxxxx3

5.
若要搜尋交集結果,請在詞與詞間加上大寫 “AND” “+” (不包含).
例如: text:總統府 AND text:郵局

+text:
總統府 +text:郵局

name:
總統府 AND tel:23xxxxxx3

name: ( +
總統府 +郵局)

6.
排除查詢
在要排除的詞前加上 “-” (不包含)
例如: 總統府 -郵局
搜尋結果不會有包含郵局的詞的結果在內

7. Group
搜尋
使用 “()” 來包含一個group
如希望搜尋在店名欄位內同時有台北”(不包含) 火車站”(不包含)

8.
增加權重: 如要搜尋中華 加油站”(不包含) 但因為回傳太多筆資料內有中華”(不包含) 加油站”(不包含) 的結果,
所以想要把有包含加油站”(不包含)的資料往前排,可使用 “^”(不包含)符號在後面加上愈增加的權重數,
像是 “2″,則可以這樣做:

中華 加油站^2

會同時搜尋含有中華或加油站的結果,並把加油站這個詞加權所以搜尋時會先判斷加油站這一個詞在
搜尋結果中的比重,甚至假設一筆資料內加油站出現過兩次以上的就更加會有優先權.

查詢時在查詢詞後加上 “^” (不包含) 再加上權重分數
例如: 總統府 AND “郵局”^2

總統府^2 OR 郵局

9. Wildcard
搜尋使用 “*” 符號; 如果輸入中國*” (不包含), 結果會有中國信託商業銀行, 中國輸出入銀行圖書閱覽室, 中國商銀證券
中國及銀之間可夾任何長短字詞.

10.
當然還有一些更深入的用法,這裡只是初級的解說,若有興趣可以看看 lucene solr document.

转自一台湾网友的blog,现已打不开,这是google的网页快照上的内容。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【优质项目推荐】 1、项目代码均经过严格本地测试,运行OK,确保功能稳定后才上传平台。可放心下载并立即投入使用,若遇到任何使用问题,随时欢迎私信反馈与沟通,博主会第一时间回复。 2、项目适用于计算机相关专业(如计科、信息安全、数据科学、人工智能、通信、物联网、自动化、电子信息等)的在校学生、专业教师,或企业员工,小白入门等都适用。 3、该项目不仅具有很高的学习借鉴价值,对于初学者来说,也是入门进阶的绝佳选择;当然也可以直接用于 毕设、课设、期末大作业或项目初期立项演示等。 3、开放创新:如果您有一定基础,且热爱探索钻研,可以在此代码基础上二次开发,进行修改、扩展,创造出属于自己的独特应用。 欢迎下载使用优质资源!欢迎借鉴使用,并欢迎学习交流,共同探索编程的无穷魅力! 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip 基于业务逻辑生成特征变量python实现源码+数据集+超详细注释.zip

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值