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
随机推荐
- 如何使用 Kubernetes 监测定位慢调用
简介:本次课程主要分为三大部分,首先将介绍慢调用的危害以及常见的原因:其次介绍慢调用的分析方法以及最佳实践:最后将通过几个案例来去演示一下慢调用的分析过程. 作者:李煌东 大家好,我是阿里云的李煌东 ...
- 解决 Serverless 落地困难的关键,是给开发者足够的“安全感”
简介:越来越多的云产品都会向全托管.Serverless 形态演进.当云的产品体系 Serverless 化达到一个临界值,通过函数计算这样的 Serverless 计算服务结合其他 Serverl ...
- SQL server 批量删除表
select 'drop table '+name+';' from sys.tables declare c cursor forselect NAME from sysobjects where ...
- Uncaught TypeError: (intermediate value)(intermediate value)(intermediate value)(intermediate value)...is not a function
之前写完前端部分的时候总是会出现这个错误 对应代码 解决方法,在后面加上分号即可解决
- 10、操作系统安全加固-Linux加固
1.账号管理与认证授权 1.1.为不同的管理员分配不同的账号 目的:根据不同用途设置不同账户账号,提高安全层级 实施方法: 1.设置高风险文件为最小权限,如:passwd.shadow.group.s ...
- Mysql5.7 Linux编译安装教程
1.系统约定 安装文件下载目录:/data/software Mysql目录安装位置:/usr/local/mysql 数据库保存位置:/usr/local/mysql/data 日志保存位置:/tm ...
- HTML link标签中preload,prefetch,dns-prefetch,preconnect,prerender
Preload 在我们的浏览器加载资源的时候,对于每一个资源都有其自身的默认优先级,倘若我们能修改每一个资源的默认优先级,那我们几乎可以按照我们的预期加载想要加载的资源. 以谷歌浏览器为例,我们打开控 ...
- fastposter发布1.4.3 跨语言的海报生成器
fastposter发布1.4.3 跨语言的海报生成器 v1.4.3 增加golang语言支持,优化生成器代码,完善官方文档 昨天喝了点小9️⃣,发版慢了些. future: 增加golang语言支持 ...
- 几行命令用minikube快速搭建可测试的kubernetes单节点环境
几行命令用minikube快速搭建可测试的kubernetes单节点环境 需要docker环境,https://www.cnblogs.com/xiaofei12/p/17544579.html,网速 ...
- 基于 OAI 部署私有的 4G EPS
目录 文章目录 目录 前言 硬件设备要求 运行平台 RF 外设 可编程 SIM 卡 UE 终端 高精度参考时钟 操作系统要求 内核要求 CPU Frequency scaling All-In-One ...