首页 > 其他分享 >Elasticsearch模糊查询

Elasticsearch模糊查询

时间:2023-05-06 11:45:20浏览次数:31  
标签:shouldQuery 模糊 查询 Elasticsearch phrase QueryBuilders match

Elasticsearch模糊查询

ES模糊查询共有三种:

1.match 分词匹配查询和match_phrase短语查询

  Elasticsearch的match_phrase短语查询跟match的区别就是,关键词作为一个整体进行搜索,而不是拆分成一个个关键词。

  当匹配对象为中文时,建议使用:

  MatchPhraseQueryBuilder query = QueryBuilders.matchPhraseQuery("name", "*"+req.getName()+"*");
2.wildcard 通配符检索

  类似SQL中的like,可以拼接*

  WildcardQueryBuilder query = QueryBuilders.wildcardQuery("tel", "*"+req.getTel()+"*");
3.fuzzy 纠错查询,有一定容错性

亲测:match_phrase可行;

 

ES的OR实现:

BoolQueryBuilder query2 = QueryBuilders.boolQuery();

BoolQueryBuilder shouldQuery = QueryBuilders.boolQuery();
shouldQuery.should(QueryBuilders.wildcardQuery("a" , "1"));
shouldQuery.should(QueryBuilders.wildcardQuery("b" , "1"));

query2.must(shouldQuery);

 

标签:shouldQuery,模糊,查询,Elasticsearch,phrase,QueryBuilders,match
From: https://www.cnblogs.com/lizm166/p/17376764.html

相关文章

  • .net 6 使用 NEST 查询,时间字段传值踩坑
    0x01业务描述说明:同事搭建的业务系统,最开始使用 log4net 记录到本地日志.然后多个项目为了日志统一,全部记录在 Elasticsearch ,使用  log4net.ElasticSearchAppender.DotNetCore.然后搭建了Kibanal  对 Elasticsearch 进行查询. 但是项目组开发人员众多,不是每......
  • 由浅入深学MYSQL之--MySQL分组查询详解
    前言从今天开始本系列文内容就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深,全面讲解数据库体系。非常适合零基础的小伙伴来学习。全文大约【1066】字,不说废话,只讲可以让你学到技术、明白原理的纯......
  • 解密Elasticsearch:深入探究这款搜索和分析引擎
    作者:京东保险 管顺利开篇最近使用Elasticsearch实现画像系统,实现的dmp的数据中台能力。同时调研了竞品的架构选型。以及重温了redis原理等。特此做一次es的总结和回顾。网上没看到有人用Elasticsearch来完成画像的。我来做第一次尝试。背景说完,我们先思考一件事,使用内存系统做......
  • mongodb使用and配合or查询
    使用mongodb时,有时需要使用and配合(嵌套)or查询。实现类似以下sql的语句:select*fromMongoDbTestwherestatus=1and(userId="abc"orprice>=2)对应的mongodb语句如下:db.getCollection("mongoDbTest").find({"status":1,"$and":[{"$or&q......
  • elasticsearch集群及kibana安装
    系统配置创建一个用户elastic,不能使用root用户启动配置该用户环境变量,用户home目录.bash_profile文件#配置ES_JAVA_HOME使用es自带jdkexportES_JAVA_HOME=/data/es/elasticsearch/jdk#修改最大文件句柄数ulimit-n65535#修改最大线程数ulimit-u4096执行..bash_p......
  • 日志查询常用命令
    tailtail-fa.log实时显示日志输出Ctrl+c退出tail-n10a.log显示日志倒数10行tail-n+10a.log显示第10行到最后行headcattac反向cata.log一次查看这个日志cat-na.log一次查看整个日志并且编上行号包括空白行cata.log|more显示满屏暂停,空格翻页,Ctrl+B返回......
  • 基于ArkUI框架开发——图片模糊处理的实现
     原文:https://mp.weixin.qq.com/s/vwXVj5vmAxDRG_jTk_8hPA,点击链接查看更多技术内容。现在市面上有很多APP,都或多或少对图片有模糊上的设计,所以,图片模糊效果到底怎么实现的呢?首先,我们来了解下模糊效果的对比 从视觉上,两张图片,有一张是模糊的,那么,在实现图片模糊效果之前,......
  • 使用StackExchange.Redis组件C#模糊删除模糊查找
     C#StackExchange.Redis模糊删除模糊查找 ///<summary>///模糊查找///</summary>///<paramname="key"></param>publicList<XJDataDll.Tag.Point>SelectTags(stringpattern){......
  • SpringBoot中策略模式+工厂模式业务实例(接口传参-枚举类查询策略映射关系-执行不同策
    场景设计模式-策略模式在Java中的使用示例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/127622238上面讲了策略模式在Java中的使用示例。下面看一个在SpringBoot中的实际使用示例。业务场景:有多个煤矿,信号灯有多个厂家/规则,每个煤矿对应一种信号灯。需要编......
  • sqlserver 查询表中的主键、外键列及外键表,外表中的主键列
    --获取主键信息EXECsp_pkeys@table_name='tablename'--获取外键方法一SELECTField=(SELECTnameFROMsyscolumnsWHEREcolid=b.fkeyANDid=b.fkeyid),FKTable=object_name(b.rkeyid),FKKeyField=(SELECTnameFROMsyscolumnsWHEREcolid=b.rkeyANDid=b.rkeyid......