es语法 rest api 模拟query 根据中文姓名搜索demo
es语法 rest api 模拟query 根据中文姓名搜索demo order_info_es/_doc/40094182abc GET order_info_es/_settings?pretty GET
{
"order_info_es": {
"settings": {
"index": {
"mapping": {
"total_fields": {
"limit": "2000"
}
},
"number_of_shards": "5",
"provided_name": "order_info_es",
"creation_date": "1614763664247",
"number_of_replicas": "1",
"uuid": "2AmFKQ4SQLOfRVM1H5M7hw",
"version": {
"created": "6081399"
}
}
}
}
} order_info_es/_mappings?pretty GET
"orderInfoDTO": {
"properties": {
"operatorName": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}, order_info_es/_doc/40094182abc GET
"orderInfoDTO": {
"orderNo": "40094182abc",
"statusDesc": "分配操作",
"createTime": "2023-03-21T17:05:37",
"isDelete": 0,
"operatorName": "小明同学",
"updateTime": "2023-03-28T11:05:39",
"id": 2,
"version": 1,
"status": 1,
"createOp": "cbcb0e41df29594b03d53f94eae0db3b" order_info_es/_search POST
{
"query": {
"term": {
"order.orderNo": {
"value": "40094182abc",
"boost": 1
}
}
}
} ##带多个条件的情况查询:
order_info_es/_search POST
{
"query": {
"bool": {
"must": [
{
"term": {
"orderInfoDTO.orderNo": {
"value": "40094182abc",
"boost": 1
}
}
},
{
"term": {
"orderInfoDTO.createOp": {
"value": "cbcb0e41df29594b03d53f94eae0db3b",
"boost": 1
}
}
}
]
}
}
} ##根据订单号搜索
order_info_es/_search POST
{
"query": {
"term": {
"order.orderNo": {
"value": "40094182abc",
"boost": 1
}
}
}
} ##精确匹配:terms
order_info_es/_search POST
{
"query": {
"terms": {
"orderInfoDTO.createOp": [
"cbcb0e41df29594b03d53f94eae0db3b",
"298af1d335ecf13e7492395c8203fe79"
],
"boost": 1
}
}
} #完整
order_info_es/_search POST
{
"from": 0,
"size": 20,
"query": {
"bool": {
"must": [
{
"term": {
"isNew": {
"value": "1",
"boost": 1
}
}
},
{
"term": {
"category": {
"value": "2",
"boost": 1
}
}
},
{
"term": {
"status": {
"value": "8",
"boost": 1
}
}
},
{
"term": {
"order.orderNo": {
"value": "40094182abc",
"boost": 1
}
}
},
{
"terms": {
"orderInfoDTO.operatorName": [
"小明同学"
],
"boost": 1
}
}
],
"adjust_pure_negative": true,
"boost": 1
}
},
"sort": [
{
"order.reqTime": {
"order": "desc"
}
}
]
} ##可以搜索出来结果:
order_info_es/_search POST
{
"query": {
"match_phrase": {
"orderInfoDTO.operatorName": {
"query": "小明同学",
"slop": 0,
"zero_terms_query": "NONE",
"boost": 1
}
}
}
} order_info_es/_search POST
{
"query": {
"match_phrase": {
"orderInfoDTO.operatorName": {
"query": "小明同学",
"slop": 0,
"zero_terms_query": "NONE",
"boost": 1
}
}
}
} ##搜索关键字:
order_info_es/_search POST
{
"from": 0,
"size": 20,
"query": {
"bool": {
"must": [
{
"term": {
"isNew": {
"value": "1",
"boost": 1
}
}
},
{
"term": {
"category": {
"value": "2",
"boost": 1
}
}
},
{
"term": {
"status": {
"value": "8",
"boost": 1
}
}
},
{
"match_phrase": {
"orderInfoDTO.operatorName": {
"query": "李小龙",
"slop": 0,
"zero_terms_query": "NONE",
"boost": 1
}
}
}
],
"adjust_pure_negative": true,
"boost": 1
}
},
"sort": [
{
"order.reqTime": {
"order": "desc"
}
}
]
} JAVA代码:
boolQueryBuilder.must(QueryBuilders.matchPhraseQuery("orderInfoDTO.operatorName",reqVO.getOrderOperatorNameList().get(0))); order_info_es/_search POST
{
"query": {
"match_phrase": {
"orderInfoDTO.operatorName": "李小龙"
}
}
} JAVA代码:
boolQueryBuilder.must(QueryBuilders.matchQuery("orderInfoDTO.operatorName",reqVO.getOrderOperatorNameList().get(0))); order_info_es/_search POST
{
"query": {
"match": {
"orderInfoDTO.operatorName": "李小龙"
}
}
} order_info_es/_search POST
{
"query": {
"match": {
"orderInfoDTO.operatorName": {
"query": "李小龙",
"operator": "OR",
"prefix_length": 0,
"max_expansions": 50,
"fuzzy_transpositions": true,
"lenient": false,
"zero_terms_query": "NONE",
"auto_generate_synonyms_phrase_query": true,
"boost": 1
}
}
}
} ##可以搜索结果:
order_info_es/_search POST
{
"query": {
"match": {
"orderInfoDTO.operatorName": {
"query": "李小龙",
"operator": "OR",
"prefix_length": 0,
"max_expansions": 50,
"fuzzy_transpositions": true,
"lenient": false,
"zero_terms_query": "NONE",
"auto_generate_synonyms_phrase_query": true,
"boost": 1
}
}
}
} ##无法搜索出来结果:multi_match
order_info_es/_search POST
{
"query": {
"multi_match": {
"query": "orderInfoDTO.operatorName",
"fields": [
"李小龙,小明同学^1.0"
],
"type": "best_fields",
"operator": "OR",
"slop": 0,
"prefix_length": 0,
"max_expansions": 50,
"zero_terms_query": "NONE",
"auto_generate_synonyms_phrase_query": true,
"fuzzy_transpositions": true,
"boost": 1
}
}
} ##无法查询出来结果:term
order_info_es/_search POST
{
"query": {
"term": {
"orderInfoDTO.operatorName": "李小龙"
}
}
} JAVA代码:
//多个条件
if(reqVO.getOrderOperatorNameList()!=null && reqVO.getOrderOperatorNameList().size()>0) {
BoolQueryBuilder subQueryBuilder = new BoolQueryBuilder();
for (int i=0; i<reqVO.getOrderOperatorNameList().size(); i++) {
QueryBuilder queryBuilder = QueryBuilders.matchQuery("orderInfoDTO.operatorName", reqVO.getOrderOperatorNameList().get(i));
subQueryBuilder.should(queryBuilder);
}
boolQueryBuilder.must(subQueryBuilder);
} ##通过或的关系查询:
order_info_es/_search POST
{
"query": {
"bool": {
"should": [
{
"match": {
"orderInfoDTO.operatorName": {
"query": "李小龙",
"operator": "OR",
"prefix_length": 0,
"max_expansions": 50,
"fuzzy_transpositions": true,
"lenient": false,
"zero_terms_query": "NONE",
"auto_generate_synonyms_phrase_query": true,
"boost": 1
}
}
},
{
"match": {
"orderInfoDTO.operatorName": {
"query": "小明同学",
"operator": "OR",
"prefix_length": 0,
"max_expansions": 50,
"fuzzy_transpositions": true,
"lenient": false,
"zero_terms_query": "NONE",
"auto_generate_synonyms_phrase_query": true,
"boost": 1
}
}
}
]
}
}
} ##带多个条件的情况:
order_info_es/_search POST
{
"query": {
"bool": {
"must": [
{
"term": {
"isNew": {
"value": "1",
"boost": 1
}
}
},
{
"bool": {
"should": [
{
"match": {
"orderInfoDTO.operatorName": {
"query": "李小龙",
"operator": "OR",
"prefix_length": 0,
"max_expansions": 50,
"fuzzy_transpositions": true,
"lenient": false,
"zero_terms_query": "NONE",
"auto_generate_synonyms_phrase_query": true,
"boost": 1
}
}
},
{
"match": {
"orderInfoDTO.operatorName": {
"query": "小明同学",
"operator": "OR",
"prefix_length": 0,
"max_expansions": 50,
"fuzzy_transpositions": true,
"lenient": false,
"zero_terms_query": "NONE",
"auto_generate_synonyms_phrase_query": true,
"boost": 1
}
}
}
]
}
}
]
}
}
}
es语法 rest api 模拟query 根据中文姓名搜索demo的更多相关文章
- [Windows Azure] Using the Graph API to Query Windows Azure AD
Using the Graph API to Query Windows Azure AD 4 out of 4 rated this helpful - Rate this topic This d ...
- ElasticSearch 中文分词搜索环境搭建
ElasticSearch 是强大的搜索工具,并且是ELK套件的重要组成部分 好记性不如乱笔头,这次是在windows环境下搭建es中文分词搜索测试环境,步骤如下 1.安装jdk1.8,配置好环境变量 ...
- paip.lucene 4.3 中文语义搜索最佳实践
paip.lucene 4.3 中文语义搜索最佳实践 首先一个问题是要不要使用lucene 自带的分词器...我觉得最好不使用哪自带的分词器.效果还凑火,就是不好控制... 先使用ik,ict,mms ...
- Sphinx + Coreseek 实现中文分词搜索
Sphinx + Coreseek 实现中文分词搜索 Sphinx Coreseek 实现中文分词搜索 全文检索 1 全文检索 vs 数据库 2 中文检索 vs 汉化检索 3 自建全文搜索与使用Goo ...
- Java 随机生成中文姓名,手机号,邮编,住址
package lovo; import java.util.HashMap; import java.util.Map; /** * 随机生成中文姓名,性别,Email,手机号,住址 * @auth ...
- MySQL中文全文搜索
我们在mysql数据中可以使用match against语句解决中文全文搜索的问题 先看一个例句: SELECT * FROM v9_search WHERE `siteid`= '1' AND `t ...
- iOS- 本地文本容错搜索引擎2-->如何实现英文(英文首字母,汉语拼音)对中文的搜索?
1.前言 先闲说几句,最近北京的雾霾真是大,呛的我这攻城师都抗不住了.各位攻城师们一定要爱护好自己的身体!空气好时,少坐多动. 如果条件好的话,最好让你们BOSS搞个室内空气净化器.因为那几天一般 ...
- Postgresql数据库安装中文全文搜索插件zhparser的问题
在PG数据库的基础上加装zhparser中文全文搜索插件,说实话,挺怕这些单独编译安装的插件的,因为安装PG数据库方法的不同,最后可能导致安装的插件各种安装不上,这里说一下我遇到的坑,系统环境是Cen ...
- 随机数生成工具类(中文姓名,性别,Email,手机号,住址)
public class RandomValueUtil { public static String base = "abcdefghijklmnopqrstuvwxyz012345678 ...
- jdk1.8帮助文档中文可搜索
jdk1.8帮助文档中文可搜索 链接:https://pan.baidu.com/s/11beeZLpEIhciOd14WkCpdg 提取码:t4lw
随机推荐
- 阿里云IoT Studio升级版新增解决方案引擎 大幅提升方案交付效率
简介: 8月25日,阿里云发布IoT Studio升级版,新增了解决方案引擎,让设备方案商复用之前搭建的解决方案模板进行简单的定制化修改,即可交付.使整个物联网解决方案的交付过程由几个月,缩短到几小时 ...
- [Go] 结构体成员的第三个位置上标签的作用
结构体成员加了第三个位置的标签,在转换指定类型时,key 会使用指定的名字. package main import ( "encoding/json" "log&quo ...
- 通过AMDP调用HANA的PAL函数
SAP预测分析库(SAP Predictive Analysis Library,PAL)是SAP HANA中的一项功能,它允许我们在SAP HANA SQLScript过程中执行分析算法. 基于AB ...
- 【爬虫数据集】李子柒YouTube频道TOP10热门视频的TOP2000热门评论,共计2W条
目录 一.背景 二.爬取目标 三.结果展示 四.演示视频 五.附完整数据 一.背景 这段时间,有超多小伙伴找我要YouTube数据,做数据分析.情感分析之类的研究工作,但很多人并不是计算机软件相关专业 ...
- [2]自定义Lua解析方式
[2]自定义Lua解析方式 在上文中我们学会学会更改加载路径,加载对应文件夹下的Lua脚本. 默认解析加载的lua脚本存在的文件位置非AB包或者Resources文件夹下往往不能随包体更新,这显然不符 ...
- LOTO示波器软件PC缓存(波形录制与回放)功能
当打开PC缓存功能后, 软件将采用先进先出的原则排队对示波器采集的每一帧数据, 进行帧缓存. 当发现屏幕中有感兴趣的波形掠过时, 鼠标点击软件的(暂停)按钮, 可以选择回看某一帧的波形.一帧数据的量 ...
- java学习之旅(day.17)
GUI编程 GUI:图形用户界面编程 GUI快淘汰了 GUI的核心技术:Swing . AWT 这是类 做一个场景页面涉及的组件 窗口.弹窗.面板.文本框.列表框.按钮.图片.监听事件.鼠标.键盘.破 ...
- AIRIOT答疑第5期|如何使用低代码业务流引擎?
推拉拽! AIRIOT平台业务流引擎可创建丰富的业务流程,实现从流程定义.数据处理.任务工单.消息通知.日志追踪的闭环流转.多类型节点任意组合,可视化流程日志,精准追踪流程流转.人工任务统一管理,审批 ...
- C# Log4net 组件无法写日志 IsDebuged、IsInfoEnabled、IsErrorEnabled 全部为false
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)] 如果 ...
- java jdbc 得到像C#里的datatable一样的表格
public ArrayList<ArrayList<String>> getDataTale2(String sql) throws SQLException { Array ...