常用查询参数

q - 查询字符串,必须的。  
fl - 指定返回那些字段内容,用逗号或空格分隔多个。  start - 返回第一条记录在完整找到结果中的偏移位置,0开始。  
rows - 指定返回结果最多有多少条记录,配合start来实现分页。  
sort - 排序,示例:(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之间的。 
这两句是一样的意思
query.setQuery("*:*");
query.set("q", "*:*");

以某个字段排序

query.setSort("score_i",ORDER.desc);
q.op - 覆盖schema.xml的defaultOperator(有空格时用“AND”还是用“OR”操作逻辑),一般默认指定  “OR”
df - 默认的查询字段,一般默认指定  
qt – (query type)指定那个类型来处理查询请求,一般不用指定,默认是standard。
indent - 返回的结果是否缩进,默认关闭,用 indent=true|on 开启,一般调试json,php,phps,ruby输出才有必要用这个参数。  
version - 查询语法的版本,建议不使用它,由服务器指定默认值。

Solrj的检索运算符

“:”指定字段查指定值,如返回所有值*:*
“?”表示单个任意字符的通配 
“*” 表示多个任意字符的通配(不能在检索的项开始使用*或者?符号)
“~”表示模糊检索,如检索拼写类似于”roam”的项这样写:roam~将找到形如foam和roams的单词;roam~0.8,检索返回相似度在0.8以上的记录。
邻近检索,如检索相隔10个单词的“apache”和”“akarta”,“jakarta apache”~10
 “^”控制相关度检索,如检索jakarta apache,同时希望去让“jakarta”的相关度更加好,那么在其后加上”^”符号和增量值,即jakarta^4 apache
 
布尔操作符AND、||
布尔操作符OR、&&
布尔操作符NOT、!、-(排除操作符不能单独与项使用构成查询) “+” 存在操作符,要求符号“+”后的项必须在文档相应的域中存在 
( ) 用于构成子查询
[ ] 包含范围检索,如检索某时间段记录,包含头尾,date:[200707 TO 200710]  
{ }不包含范围检索,如检索某时间段记录,不包含头尾 date:{200707 TO 200710}  
" 转义操作符,特殊字符包括+ - && || ! ( ) { } [ ] ^ ” ~ * ? : " 
 
 
查询某个字段非空的记录 比如:fq=FieldName:[‘’ TO *] 查询FieldName非空的数据。
查询某个字段为空的记录 比如:查询公司名称为空的记录可以采用如下语法实现(似乎目前为止只有此方法可行):
-company:[* TO *]
取反实例:fq=!fstate:1

5.solr学习速成之语法的更多相关文章

  1. 2.solr学习速成之安装

    1.下载解压solr-5.3.1.tgz [root@205 opt]# tar -zxf solr-5.3.1.tgz -C /opt/module/ 2.将solr-5.3.1/server/so ...

  2. 13.solr学习速成之IK分词器

    IKAnalyzer简介 IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包. IKAnalyzer特性 a. 算法采用“正向迭代最细粒度切分算法”,支持细粒度和最大词长两 ...

  3. 12.solr学习速成之dataimport

    solr除了利用solrj建立索引外,还可以由列式数据库hbase触发器添加索引,自动全量或者增量索引关系数据库数据等. dataimport可以配置从任何关系数据库导入索引 1.将jar包拷贝到to ...

  4. 11.solr学习速成之MoreLikeThis

    Solr相似匹配    在网页搜索或电商产品搜索结果页面,很多时候会看到一个相似文档.相似产品或找相似的链接.Solr 使用 MoreLikeThisComponent(MLT)和 MoreLikeT ...

  5. 10.solr学习速成之高亮显示

    Solr高亮显示的三种实现 高亮显示在搜索中使用的比较多,比较常用的有三种使用方式,如果要对某field做高亮显示,必须对该field设置stored=true .          第一种是普通的高 ...

  6. 9.solr学习速成之group

    Group与Facet的区别  facet的查询结果主要是分组信息:有什么分组,每个分组包括多少记录:但是分组中有哪些数据是不可知道的,只有进一步搜索.        group则类似于关系数据库的g ...

  7. 8.solr学习速成之FacetPivot

    什么是Facet.pivot  Facet.pivot就是按照多个维度进行分组查询,是Facet的加强,在实际运用中经常用到,一个典型的例子就是商品目录树 NamedList解释: NamedList ...

  8. 7.solr学习速成之facet

    Facet 介绍   Facet 是 solr 的高级搜索功能之一 ,可以给用户提供更友好的搜索体验,在搜索关键字的同时 , 能够按照 Facet 的字段进行分组并统计.        比如你上淘宝, ...

  9. 6.solr学习速成之multicore查询

    查询关联多个core 再新建一个core 向每个core添加索引,修改 final static String SOLR_URL = "http://localhost:8080/solr/ ...

随机推荐

  1. ios通知使用 书上案例 简单易懂

    /* The notification name */const NSString *ResultOfAppendingTwoStringsNotification =@"ResultOfA ...

  2. iptables(三)iptables规则管理(增、删、改)

    上一篇文章中,我们已经学会了怎样使用iptables命令查看规则,那么这篇文章我们就来总结一下,怎样管理规则. 之前,我们把查看iptables规则的操作比作"增删改查"当中的&q ...

  3. visualvm监控jvm及远程jvm监控方法

    VisualVM是Sun的一个OpenJDK项目,其目的在于为Java应用创建一个整套的问题解决工具.它集成了多个JDK命令工具的一个可视化工具,它主要用来监控JVM的运行情况,可以用它来查看和浏览H ...

  4. com.itnba.maya.domel.Diaoyantimu_$$_javassist_1 cannot be cast to javassist.util.proxy.Proxy错误问题解决方法

    控制台报错显示: com.itnba.maya.domel.Diaoyantimu_$$_javassist_1 cannot be cast to javassist.util.proxy.Prox ...

  5. linux下vim对于意外退出的文档的再次开启

    转载的: 1.对于同一个文件如果上次已经打开,而未关闭的情况下,又打开该文件进行编辑时,会出现如下提醒: 这是由于已经打开但未闭关的文件,会在其目录下出现一个.swp的文件,由于是属于隐藏文件,可以用 ...

  6. Flask 的 请求扩展 与 中间件

    Flask 的 请求扩展 与 中间件 flask 可以通过 扩展(装饰器)来实现类似于django 中间件的功能 类似于django 的中间件, 在执行视图函数之前, 之后的执行某些功能 1 @app ...

  7. Jedis操作Redis技巧详解

    对于Redis的部署模式有两种,单机模式 和 集群模式.因此,本文的介绍也从这两个方面进行介绍.众所周知,Jedis是最著名的Redis java客户端操作类库,几乎支持所有的Redis操作.本文就是 ...

  8. MySql必知必会实战练习(三)数据过滤

    在之前的博客MySql必知必会实战练习(一)表创建和数据添加中完成了各表的创建和数据添加,MySql必知必会实战练习(二)数据检索中介绍了所有的数据检索操作,下面对数据过滤操作进行总结. 1. whe ...

  9. 前端导出Excel

    1.首先,需要下载一个叫better-xlsx,的插件,以yarn 为例 ' yarn add better-xlsx --save '下载相关依赖包( npm 方式 ' npm i better-x ...

  10. hibernate缓存机制详解

    hiberante面试题—hibernate缓存机制详解   这是面试中经常问到的一个问题,可以按照我的思路回答,准你回答得很完美.首先说下Hibernate缓存的作用(即为什么要用缓存机制),然后再 ...