`
fengshulin
  • 浏览: 41616 次
社区版块
存档分类
最新评论

Apache Solr查询语法

 
阅读更多

查询参数

常用:

  • q - 查询字符串,必须的。
  • fl - 指定返回那些字段内容,用逗号或空格分隔多个。
  • start - 返回第一条记录在完整找到结果中的偏移位置,0开始,一般分页用。
  • rows - 指定返回结果最多有多少条记录,配合start来实现分页。
  • sort - 排序,格式:sort=<field name>+<desc|asc>[,<field name>+<desc|asc>]。示例:(inStock desc, price asc)表示先 "inStock" 降序, 再 "price" 升序,默认是相关性降序。
  • wt - (writer type)指定输出格式,可以有 xml, json, php, phps。
  • fq - (filter query)过虑查询,作用:在q查询符合结果中同时是fq查询符合的,例如:q=mm&fq=date_time:[20081001 TO 20091031],找关键字mm,并且date_time是20081001到20091031之间的

不常用:

  • defType
  • q.op - 覆盖schema.xml的defaultOperator(有空格时用"AND"还是用"OR"操作逻辑),一般默认指定
  • df - 默认的查询字段,一般默认指定
  • qt - (query type)指定那个类型来处理查询请求,一般不用指定,默认是standard。

其它:

  • indent - 返回的结果是否缩进,默认关闭,用 indent=true|on 开启,一般调试json,php,phps,ruby输出才有必要用这个参数。
  • version- 查询语法的版本,建议不使用它,由服务器指定默认值。
  • 检索运算符

    • : 指定字段查指定值,如返回所有值:
    • ? 表示单个任意字符的通配
    • * 表示多个任意字符的通配(不能在检索的项开始使用*或者?符号)
    • ~ 表示模糊检索,如检索拼写类似于"roam"的项这样写:roam~将找到形如foam和roams的单词;roam~0.8,检索返回相似度在0.8以上的记录。 邻近检索,如检索相隔10个单词的"apache"和"jakarta","jakarta apache"~10
    • ^ 控制相关度检索,如检索jakarta apache,同时希望去让"jakarta"的相关度更加好,那么在其后加上""符号和增量值,即jakarta4 apache
    • 布尔操作符AND、||
    • 布尔操作符OR、&&
    • 布尔操作符NOT、!、-(排除操作符不能单独与项使用构成查询)
    • + 存在操作符,要求符号"+"后的项必须在文档相应的域中存在
    • () 用于构成子查询
    • [] 包含范围检索,如检索某时间段记录,包含头尾,date:[200707 TO 200710]
    • {}不包含范围检索,如检索某时间段记录,不包含头尾,date:{200707 TO 200710}
    • " 转义操作符,特殊字符包括+ - && || ! ( ) { } [ ] ^ " ~ * ? : "

    示例

    • 1. 查询所有
    http://localhost:8080/solr/primary/select?q=*:*
    
    • 2. 限定返回字段
    http://localhost:8080/solr/primary/select?q=*:*&fl=productId
    

    表示:查询所有记录,只返回productId字段

    • 3. 分页
    http://localhost:8080/solr/primary/select?q=*:*&fl=productId&rows=6&start=0
    

    表示:查询前六条记录,只返回productId字段

    • 4. 增加限定条件
    http://localhost:8080/solr/primary/select?q=*:*&fl=productId&rows=6&start=0&fq=category:2002&fq=namespace:d&fl=productId+category&fq=en_US_city_i:1101
    

    表示:查询category=2002、en_US_city_i=110以及namespace=d的前六条记录,只返回productId和category字段

    • 5. 添加排序
    http://localhost:8080/solr/primary/select?q=*:*&fl=productId&rows=6&start=0&fq=category:2002&fq=namespace:d&sort=category_2002_sort_i+asc
    

    表示:查询category=2002以及namespace=d并按category_2002_sort_i升序排序的前六条记录,只返回productId字段

    • 6. facet查询

    现实分组统计结果

    http://localhost:8080/solr/primary/select?q=*:*&fl=productId&fq=category:2002&facet=true&facet.field=en_US_county_i&facet.field=en_US_hotelType_s&facet.field=price_p&facet.field=heatRange_i
    
    http://localhost:8080/solr/primary/select?q=*:*&fl=productId&fq=category:2002&facet=true&facet.field=en_US_county_i&facet.field=en_US_hotelType_s&facet.field=price_p&facet.field=heatRange_i&facet.query=price_p:[300.00000+TO+*]

    solr删除所有索引

    http://localhost:8080/solr/collection1/update/?stream.body=<delete><query>*:*</query></delete>&stream.contentType=text/xml;charset=utf-8&commit=true

分享到:
评论

相关推荐

    Apache Solr(solr-8.11.1.tgz)

    - **新功能**:可能引入了新的搜索特性,比如新的查询语法、更强大的分析器或者对最新技术标准的支持。 - **稳定性改进**:修复了已知的bug,增强了系统的稳定性和可靠性。 - **安全增强**:可能会有安全更新,以...

    solr查询语法.pdf

    Solr是一种基于Apache Lucene的开源搜索引擎,提供了丰富的查询语法来满足各种搜索需求。在了解Solr查询语法前,我们首先需要了解几个核心概念。 首先,Solr的查询解析是通过queryParser来配置的,通常使用默认配置...

    Apache Solr(solr-8.11.1.zip)

    Solr在其之上添加了更多高级特性,如 faceting(分面搜索),highlighting(高亮显示),以及更复杂的查询语法。 4. **配置文件**:压缩包中的配置文件包括`solrconfig.xml`和`schema.xml`。`solrconfig.xml`定义了...

    solr查询语法

    Solr查询语法是Apache Solr搜索引擎的核心组成部分,用于精确、高效地从索引中检索信息。根据提供的文件信息,我们将深入探讨Solr查询语法的关键概念、查询规则、查询参数以及检索运算符,以便更好地理解和应用Solr...

    《apachesolr7官方指南》PDF

    1. 全文检索:Solr使用倒排索引技术,能够快速地进行文本匹配,提供了多种查询语法,包括布尔逻辑、通配符、短语查询、近似查询等,使得用户可以灵活地构造复杂的查询条件。 2. 高效处理大数据:Solr 7引入了更强大...

    Apache Solr 3 Enterprise Search Server 部分中文翻译

    Apache Solr 是一款开源的企业级搜索服务器,由Apache软件基金会维护。它被广泛应用于构建高效、可扩展的全文检索应用。本部分中文翻译主要涵盖了Solr的快速入门、Schema设计和文本分析以及索引与搜索的基本操作。 ...

    Apache Solr 3.1 Cookbook

    - **高级查询语法**:掌握Solr提供的丰富查询语言,包括布尔逻辑、短语匹配、近义词扩展等。 - **排序与分组**:了解如何对搜索结果进行排序和分组,以满足不同的业务场景需求。 #### 4. **高可用性和扩展性** -...

    Apache.Solr.3.1.Cookbook

    - **高级查询语法**: 介绍 Solr 的 QueryParser 和 DisMax 查询解析器,以及如何使用它们来构建复杂的查询。 - **结果排序与分组**: 掌握排序和分组查询结果的方法,以及如何实现自定义排序策略。 4. **性能调优**...

    Apache Solr(solr-7.7.3.zip)

    支持丰富的查询语法,如布尔运算、短语搜索、通配符搜索等。 - **结果排序(Sorting)**: 用户可以通过指定 `sort` 参数来改变搜索结果的排序方式,例如按照某个字段的值进行升序或降序排序。 **4. 高级特性** - ...

    Apache Solr 搜索使用文档

    - **强大的全文检索功能**:Solr 支持复杂的查询语法,并能够高效地处理大规模的数据集。 - **内部优化**:为了应对大规模数据索引的需求,Solr 对内部进行了优化,能够有效地存储和检索大量文档。 - **简单易用的...

    Apache Solr Beginner's Guide

    - **标准查询解析器**:支持基本的全文检索语法。 - **DisMax 查询解析器**:提供更高级的功能,如自动完成、拼写检查等。 - **函数查询**:允许使用特定函数对结果进行排序或过滤。 #### 七、Solr 的优化技巧 - **...

    Apache Solr 架设搜索服务器 学习笔记

    2. **查询语法**:Solr 支持丰富的查询语法,如布尔运算符(AND, OR, NOT)、短语搜索、通配符查询、范围查询等。 3. **查询优化**:可通过调整查询解析器、使用缓存、优化查询语句等方式提高查询性能。 ### 四、...

    Apache Solr and Tomcat6 Search engine

    3. **搜索API**: Solr支持多种查询语言,如简单的Lucene查询语法和更复杂的Solr查询语法。它还提供了高级查询选项,如模糊匹配、短语查询、排序和分页。 4. **分布式搜索**: Solr可以部署在多个服务器上,形成一个...

    apache-solr7.7

    查询机制则支持各种查询语法,以便用户能够有效地搜索信息。 2. **安装与配置**:在Windows上,用户只需下载并解压solr-7.7.0.zip文件,然后运行start.jar启动Solr服务器。默认情况下,它会创建一个名为...

    Apache Solr 3 Enterprise Search Server

    - **富查询语法**:利用Solr提供的强大查询语言进行复杂条件的检索。 - **地理空间搜索**:支持基于地理位置的查询,这对于地图应用或地理位置相关的服务非常重要。 - **相关性排序**:通过调整算法参数等方式来优化...

    Apache Solr Reference Guide 6.0.pdf

    Apache Solr是一个基于Lucene的开源搜索引擎,它为搜索功能提供了丰富的索引和查询特性。Apache Solr Reference Guide 6.0是针对Solr 6.0版本的官方参考手册,详细介绍了该版本的使用方法、配置、API以及与ZooKeeper...

    Solr 查询,索引

    Solr查询与索引是Apache Solr的核心功能,它是一个基于Lucene的开源搜索引擎服务器,提供了高效、可扩展的全文检索、命中高亮、 faceted search(分面搜索)、拼写检查、动态集群等特性。在本文中,我们将深入探讨...

    基于Solr的多表join查询加速方法

    Solr,全称为Apache Solr,是一款开源的全文搜索引擎,被广泛应用于企业级搜索解决方案中。它基于Lucene库,提供了高效、可扩展的搜索和分析能力。在处理多表join查询时,传统的关系型数据库如MySQL等通常能很好地...

    solr6.5.1定时增量apache-solr-dataimportscheduler

    Apache Solr是一个流行的开源搜索引擎,它提供了全文搜索、 faceted search、hit highlighting、动态 clustering、database integration、地理空间搜索等功能。在Solr6.5.1版本中,定时增量数据导入...

Global site tag (gtag.js) - Google Analytics