solr精确查询,查询关键字分词后,指定满足匹配所有

一、solr查询,查询配置了查询分词器的字段,默认会对查询关键字做分词处理

1、如查询关键字F1501ZY000011,使用solr7自带的中文分词器,默认会分词为:f,1501,zy,000011

2、不使用defType=edismax参数的查询结果

二、使用参数defType=edismax&mm=100%,指定查询关键字分词后,满足匹配所有

三、java的solrj中指定defType=edismax参数

  1. SolrQuery solrQuery = new SolrQuery(q);

  2.  

    //设置匹配度100%

  3.  

    solrQuery.set("defType","edismax");

  4.  

    solrQuery.set("mm","100%");

原文地址:https://www.cnblogs.com/cuihongyu3503319/p/9335527.html

时间: 2024-11-05 12:10:55

solr精确查询,查询关键字分词后,指定满足匹配所有的相关文章

对本地Solr服务器添加IK中文分词器实现全文检索功能

在上一篇随笔中我们提到schema.xml中<field/>元素标签的配置,该标签中有四个属性,分别是name.type.indexed与stored,这篇随笔将讲述通过设置type属性的值实现中文分词的检索功能 首先下载IK中文分词项目,下载地址https://code.google.com/archive/p/ik-analyzer/downloads?page=1, 其中除了含有jar包之外,还有三个相关的配置文件 第一步,将IKAnalyzer2012FF_u1.jar添加到项目的WE

Solr分组聚合查询之Facet

摘要: Solr的分组聚合是一个笼统的概念,目的就是把查询结果做分类,有多种方式可以做到很类似的结果.也正是由于它们的不同表现,可以适合于多种场景. 何为Facet Facet是一种手段,用来将搜索结果分类,它并不会修改查询结果信息,只是给分类后的结果加上了每一项的数量值.我们可以用facet来做导航栏,引导用户更精确地查找信息. 一般参数 参数 说明 facet 布尔值,设置为true,表示开启facet facet.query 指定查询语句 facet 布尔值,默认为空,只有设置为true,

Solr实战:使用Hue+Solr实现标签查询

公司最近在研究多条件组合查询方案,Google的一位技术专家Sam和我们讨论了几个备选方案. Sam的信: 我做了进一步研究,目前有这么几种做法: 1) 最直接粗暴,只做一个主index,比如按行业+地区做一个index,这样来说的话,无论多少个标签的查询,直接先用主index做一个筛选,这样下来可能只有少于10w个row,然后对这10w个一个个filtering,这种做法可能能够满足大部分需求.当然,这种做法需要用到cache来优化,否则每次都去DB load会影响数据库的performanc

【JPA】表达条件查询的关键字

1.通过解析方法名创建查询 框架在进行方法名解析时,会先把方法名多余的前缀截取掉,比如 find.findBy.read.readBy.get.getBy,然后对剩下部分进行解析.并且如果方法的最后一个参数是 Sort 或者 Pageable 类型,也会提取相关的信息,以便按规则进行排序或者分页查询. 在创建查询时,我们通过在方法名中使用属性名称来表达,比如 findByUserAddressZip ().框架在解析该方法时,首先剔除 findBy,然后对剩下的属性进行解析,详细规则如下(此处假

Solr的一些查询参数

fl: 是逗号分隔的列表,用来指定文档结果中应返回的 Field 集.默认为 "*",指所有的字段. defType: 指定query parser,常用defType=lucene, defType=dismax, defType=edismax q: query. q.alt: 当q字段为空时,用于设置缺省的query,通常设置q.alt为*:*. qf: query fields,指定solr从哪些field中搜索. pf: 用于指定一组field,当query完全匹配pf指定的

ORACLE 查询一个数据表后通过遍历再插入另一个表中的两种写法

ORACLE 查询一个数据表后通过遍历再插入另一个表中的两种写法 语法 第一种: 通过使用Oracle语句块  --指定文档所有部门都能查看 declare cursor TABLE_DEPT is SELECT ID,UNAME from g_users where utype=2 and STATUS>-1; begin for c in TABLE_DEPT loop INSERT INTO G_KNOWDOCRIGHT(RID,DIRID,DOCID,USERID) VALUES(SYS

Solr与MySQL查询性能对比

测试数据量:10407608 Num Docs: 10407608 在项目中一个最常用的查询,查询某段时间内的数据,SQL查询获取数据,30s左右 SELECT * FROM `tf_hotspotdata_copy_test` WHERE collectTime BETWEEN '2014-12-06 00:00:00' AND '2014-12-10 21:31:55'; 对collectTime建立索引后,同样的查询,2s,快了很多. Solr索引 <!--Index Field for

Solr学习笔记——查询

1.进入Solr管理界面http://localhost:8983/solr/ 可以看到Query中有若干的参数,其意义如下(参考:http://www.jianshu.com/p/3c4cae5dee8d) Solr的查询语法: Solr默认有三种查询解析器(Query Parser): Standard Query Parser DisMax Query Parser Extended DisMax Query Parser (eDisMax) 第一种是标准的Parser,最后一种是最强大的

mysql 怎么查询出,分组后的总条数。。。也就是有多少组数。。。。怎么写

SELECT COUNT(*) AS 多少组数FROM( SELECT id FROM 表 GROUP BY id) subQuery;Mysql,有一个表含有以下字段,uid 发帖人id,title 发帖标题,tc 发帖内容,time 发帖时间,用一条语句算出昨天发帖书大于10的,一共有多少人? select count(*) from (select distinct startperson_id,count(startperson_id) as num from apphome_finan