elasticsearch 嵌套对象使用Multi Match Query、query_string全文检索设置
参考:
https://www.elastic.co/guide/en/elasticsearch/reference/1.7/mapping-nested-type.html
https://stackoverflow.com/questions/31829654/elastic-search-nested-multimatch-query
https://www.elastic.co/guide/en/elasticsearch/reference/5.6/nested.html
Note: changing an object type to nested type requires reindexing.
The nested object fields can also be automatically added to the immediate parent by setting include_in_parent to true, and also included in the root object by setting include_in_root to true.
Nested docs will also automatically use the root doc _all field.
//-------------------------创建索引--------------------------
--------------http://172.19.12.249:9200/indextest0121/_search
{
"mappings": {
"my_type": {
"properties": {
"sasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"lasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"xasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"pasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"zxxgsj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"saryxx": {
"type": "nested",
"include_in_parent":true,
"include_in_root":true
},
"wp": {
"type": "nested",
"include_in_parent" : true,
"include_in_root":true,
"properties": {
"zxxgsj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
}
}
},
"rqxx": {
"type": "nested",
"include_in_parent":true,
"include_in_root":true,
"properties": {
"jrsj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"lksj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
}
}
}
}
}
}
}
//------------------------插入文档------------------------------
{
"ajbh": "A2310010920092015010163",
"ajmc": "20140609郭广瑞生产、销售伪劣产品案",
"ajlxbm": "01",
"ajlxmc": "刑事",
"ajztbm": "01",
"ajztmc": "立案",
"sabar": "王五,赵六",
"sabarzjhm": "230106197001013213,230106197201013233",
"sabadw": "231010050200",
"sabadwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"labar": "王五,赵六",
"labarzjhm": "230106197001013213,230106197201013233",
"labadw": "231010050200",
"labadwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"xabar": "王五,赵六",
"xabarzjhm": "230106197001013213,230106197201013233",
"xabadw": "231010050200",
"xabadwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"pabar": "王五,赵六",
"pabarzjhm": "230106197001013213,230106197201013233",
"pabardw": "231010050200",
"pabardwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"sasj": "2015-01-01 12:10:30",
"lasj": "2015-01-02 12:10:30",
"xasj": "2015-01-03 12:10:30",
"pasj": "2015-01-04 12:10:30",
"zxxgsj": "2015-01-04 12:10:30"
,
"saryxx": [{
"rylx": "01",
"rylxmc": "嫌疑人",
"rybh": "R2301060000000001",
"ryxm": "张三",
"ryxb": "女",
"rynl": "20",
"ryzjhm": "230106199001123141",
"ryjtzz": "哈尔滨市松北别墅区",
"rylxdh": "18011111114"
},{
"rylx": "01",
"rylxmc": "违法行为人",
"rybh": "R2301060000000001",
"ryxm": "李四",
"ryxb": "男",
"rynl": "20",
"ryzjhm": "230106199001123141",
"ryjtzz": "哈尔滨市松北别墅区",
"rylxdh": "18011111114"
}],
"wp": [{
"wpmc": "可燃气体探测器",
"wpzlbm": "01",
"wpzlmc": "赃物",
"wpzl": "1公斤",
"wpxh": "100cmX100cmX100cm",
"wpztbm": "01",
"wpztmc": "物品入库",
"wpsl": "13",
"kfxx": "牡丹江市公安局涉案财务",
"kwxx": "A-刑事案件物品存放库|第01排|第01行|第01列|",
"kgy": "库管员",
"kypzr": "于令君",
"kfgly": "牡丹江库房管理员",
"bcqx": "12个月",
"kysj": "2015-01-01 12:10:30",
"zxxgsj": "2015-01-01 12:10:30"
},{
"wpmc": "刀",
"wpzlbm": "01",
"wpzlmc": "凶器",
"wpzl": "1公斤",
"wpxh": "100cmX100cmX100cm",
"wpztbm": "01",
"wpztmc": "物品登记",
"wpsl": "13",
"kfxx": "牡丹江市公安局涉案财务",
"kwxx": "A-刑事案件物品存放库|第01排|第01行|第01列|",
"kgy": "库管员",
"kypzr": "于令君",
"kfgly": "牡丹江库房管理员",
"bcqx": "12个月",
"kysj": "2015-01-01 12:10:30",
"zxxgsj": "2015-01-01 12:10:30"
}],
"rqxx": [{
"baqmc": "办案区名称",
"shbh": "手环编号",
"fjbh": "房间编号",
"fjmc": "房间名称",
"jrsj": "2015-01-01 12:10:30",
"lksj": "2015-01-01 12:10:30",
"rqyybm": "01",
"rqyymc": "传唤",
"lqyybm": "01",
"lqyymc": "传唤结束"
}]
}
//---------------------------查询文档--------------------------
{
"query": {
"bool": {
"must": [
{
"match": {
"ajztmc": "立案"
}
},
{
"match": {
"ajlxmc": "刑事"
}
},
{
"range": {
"lasj": {
"gte": "2015-01-01 12:10:10",
"lte": "2016-01-01 12:10:40"
}
}
},
{
"nested": {
"path": [
"rqxx"
],
"query": {
"bool": {
"must": [
{
"match": {
"rqxx.baqmc": "办案区名称"
}
}
]
}
}
}
},
{
"nested": {
"path": [
"saryxx"
],
"query": {
"bool": {
"must": [
{
"match": {
"saryxx.rylxmc": "嫌疑人"
}
},
{
"match": {
"saryxx.ryxb": "女"
}
}
]
}
}
}
},
{
"nested": {
"path": [
"wp"
],
"query": {
"bool": {
"must": [
{
"match": {
"wp.wpzlmc": "赃物"
}
},
{
"match": {
"wp.wpztmc": "物品入库"
}
}
]
}
}
}
},
{
"multi_match": {
"query": "男",
"lenient": "true",
"fields": [
"*"
]
}
}
]
}
},
"from": 0,
"size": 100,
"sort": {
"zxxgsj": {
"order": "desc"
}
}
}
//-------------------------创建索引--------------------------
{
"mappings": {
"my_type": {
"properties": {
"ajxx": {
"type": "nested",
"include_in_parent":true,
"include_in_root":true,
"properties": {
"sasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"lasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"xasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"pasj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"zxxgsj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
}
}
},
"saryxx": {
"type": "nested",
"include_in_parent":true,
"include_in_root":true
},
"wp": {
"type": "nested",
"include_in_parent" : true,
"include_in_root":true,
"properties": {
"zxxgsj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
}
}
},
"rqxx": {
"type": "nested",
"include_in_parent":true,
"include_in_root":true,
"properties": {
"jrsj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
},
"lksj": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
}
}
}
}
}
}
}
//------------------------插入文档------------------------------
{
"ajxx": [{
"ajbh": "A2310010920092015010163",
"ajmc": "20140609郭广瑞生产、销售伪劣产品案",
"ajlxbm": "01",
"ajlxmc": "刑事",
"ajztbm": "01",
"ajztmc": "立案",
"sabar": "王五,赵六",
"sabarzjhm": "230106197001013213,230106197201013233",
"sabadw": "231010050200",
"sabadwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"labar": "王五,赵六",
"labarzjhm": "230106197001013213,230106197201013233",
"labadw": "231010050200",
"labadwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"xabar": "王五,赵六",
"xabarzjhm": "230106197001013213,230106197201013233",
"xabadw": "231010050200",
"xabadwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"pabar": "王五,赵六",
"pabarzjhm": "230106197001013213,230106197201013233",
"pabardw": "231010050200",
"pabardwmc": "黑龙江牡丹江市公安局华电分局刑事侦查队",
"sasj": "2015-01-01 12:10:30",
"lasj": "2015-01-02 12:10:30",
"xasj": "2015-01-03 12:10:30",
"pasj": "2015-01-04 12:10:30",
"zxxgsj": "2015-01-04 12:10:30"
}],
"saryxx": [{
"rylx": "01",
"rylxmc": "嫌疑人",
"rybh": "R2301060000000001",
"ryxm": "张三",
"ryxb": "女",
"rynl": "20",
"ryzjhm": "230106199001123141",
"ryjtzz": "哈尔滨市松北别墅区",
"rylxdh": "18011111114"
},{
"rylx": "01",
"rylxmc": "违法行为人",
"rybh": "R2301060000000001",
"ryxm": "李四",
"ryxb": "男",
"rynl": "20",
"ryzjhm": "230106199001123141",
"ryjtzz": "哈尔滨市松北别墅区",
"rylxdh": "18011111114"
}],
"wp": [{
"wpmc": "可燃气体探测器",
"wpzlbm": "01",
"wpzlmc": "赃物",
"wpzl": "1公斤",
"wpxh": "100cmX100cmX100cm",
"wpztbm": "01",
"wpztmc": "物品入库",
"wpsl": "13",
"kfxx": "牡丹江市公安局涉案财务",
"kwxx": "A-刑事案件物品存放库|第01排|第01行|第01列|",
"kgy": "库管员",
"kypzr": "于令君",
"kfgly": "牡丹江库房管理员",
"bcqx": "12个月",
"kysj": "2015-01-01 12:10:30",
"zxxgsj": "2015-01-01 12:10:30"
},{
"wpmc": "刀",
"wpzlbm": "01",
"wpzlmc": "凶器",
"wpzl": "1公斤",
"wpxh": "100cmX100cmX100cm",
"wpztbm": "01",
"wpztmc": "物品登记",
"wpsl": "13",
"kfxx": "牡丹江市公安局涉案财务",
"kwxx": "A-刑事案件物品存放库|第01排|第01行|第01列|",
"kgy": "库管员",
"kypzr": "于令君",
"kfgly": "牡丹江库房管理员",
"bcqx": "12个月",
"kysj": "2015-01-01 12:10:30",
"zxxgsj": "2015-01-01 12:10:30"
}],
"rqxx": [{
"baqmc": "办案区名称",
"shbh": "手环编号",
"fjbh": "房间编号",
"fjmc": "房间名称",
"jrsj": "2015-01-01 12:10:30",
"lksj": "2015-01-01 12:10:30",
"rqyybm": "01",
"rqyymc": "传唤",
"lqyybm": "01",
"lqyymc": "传唤结束"
}]
}
//---------------------------查询文档--------------------------
{
"query": {
"bool": {
"must": [
{
"nested": {
"path": [
"ajxx"
],
"query": {
"bool": {
"must": [
{
"match": {
"ajxx.ajztmc": "立案"
}
},
{
"range": {
"ajxx.sasj": {
"gte": "2015-01-01 12:10:10",
"lte": "2016-01-01 12:10:40"
}
}
}
]
}
}
}
},
{
"nested": {
"path": [
"rqxx"
],
"query": {
"bool": {
"must": [
{
"match": {
"rqxx.baqmc": "办案区名称"
}
},
{
"range": {
"rqxx.jrsj": {
"gte": "2015-01-01 12:10:10",
"lte": "2016-01-01 12:10:40"
}
}
}
]
}
}
}
},
{
"multi_match": {
"query": "男",
"lenient": "true",
"fields": [
"*"
]
}
}
]
}
}
}
elasticsearch 嵌套对象使用Multi Match Query、query_string全文检索设置的更多相关文章
- elasticsearch 中的Multi Match Query
在Elasticsearch全文检索中,我们用的比较多的就是Multi Match Query,其支持对多个字段进行匹配.Elasticsearch支持5种类型的Multi Match,我们一起来深入 ...
- Elasticsearch Query DSL 整理总结(四)—— Multi Match Query
目录 引言 概要 fields 字段 通配符 提升字段权重 multi_match查询的类型 best_fields 类型 dis_max 分离最大化查询 best_fields 维权使者 tie_b ...
- elasticsearch 嵌套对象之嵌套类型
nested类型是一种特殊的对象object数据类型(specialised version of the object datatype ),允许对象数组彼此独立地进行索引和查询. 1. 对象数组如 ...
- elasticsearch嵌套对象的映射
在es中,我们有时候可能需要映射,{ "field" : "xx" , "field01" : [] }这样格式的嵌套对象,默认情况下es会 ...
- elasticsearch入门使用(三) Query DSL
Elasticsearch Reference [6.2] » Query DSL 参考官方文档 :https://www.elastic.co/guide/en/elasticsearch/refe ...
- Elasticsearch Query DSL 整理总结(二)—— 要搞懂 Match Query,看这篇就够了
目录 引言 构建示例 match operator 参数 analyzer lenient 参数 Fuzziness fuzzniess 参数 什么是模糊搜索? Levenshtein Edit Di ...
- Elasticsearch 5.x 关于term query和match query的认识
http://blog.csdn.net/yangwenbo214/article/details/54142786 一.基本情况 前言:term query和match query牵扯的东西比较多, ...
- Elasticsearch.Net 异常:[match] query doesn't support multiple fields, found [field] and [query]
用Elasticsearch.Net检索数据,报异常: )); ElasticLowLevelClient client = new ElasticLowLevelClient(settings); ...
- ElasticSearch 嵌套映射和过滤器及查询
ElasticSearch - 嵌套映射和过滤器 Because nested objects are indexed as separate hidden documents, we can’t q ...
随机推荐
- 十、.NET使用本地Outlook邮箱指定邮箱用户名和密码发送邮件
十..NET使用本地Outlook邮箱指定邮箱用户名和密码发送邮件 1.添加Microsoft.Office.Interop.Outlook引用 2.封装发送邮件方法 using System; us ...
- 一、WebApi模型验证实践项目使用
一.启语 前面我们说到,模型验证的原理(包含1.项目创建,2.模型创建,3.走通测试模型验证,4.在过滤器中处理返回json格式(非控制器内))-完全是新手理解使用的,新番理解 通常情况下,对于那些经 ...
- ltp-ddt smp_cpu_affinity
# @name SMP CPU Affinity# @desc Check that processes assigned to multiple CPUs complete without erro ...
- mysql中文乱码解决办法
Windows 在C:\Program Files\MySQL\MySQL Server 5.5\bin目录下 MySQLInstanceConfig.exe执行 重新配置character_set_ ...
- Codeforces Round #518 (Div. 1) Computer Game 倍增+矩阵快速幂
接近于死亡的选手没有水平更博客,所以现在每五个月更一篇. 这道题呢,首先如果已经有权限升级了,那么后面肯定全部选的是 \(p_ib_i\) 最高的. 设这个值为 \(M=\max \limits_i ...
- 牛客网NOIP赛前集训营-提高组(第六场)B-选择题
题目描述 有一道选择题,有 a,b,c,d 四个选项. 现在有 n 个人来做这题,第 i 个人有 pi,j 的概率选第 j 个选项. 定义\(cnt(x)\)为选第$ x $个选项的人数. 令\(mx ...
- JDBC和驱动类Driver
什么是JDBC? JDBC(Java DataBase Connectivity),是一套面向对象的应用程序接口(API),制定了统一的访问各类关系数据库的标准接口,为各个数据库厂商提供了标准的实现. ...
- MySQL使用版本号实现乐观锁
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11608581.html 乐观锁适用于读多写少的应用场景 乐观锁Version图示 Project D ...
- 生成100个 "20180520" 这样的时间字符串 写入txt文件
主要想记录一下 . 写NSString 到txt . 数组的去重 . 数组的截取 . 数组分割 代码如下: NSString *year = @"2018"; NSArray *m ...
- vue filters 金额转中文大写
capitalAmount(amount: any) { // 汉字的数字 const cnNums = ["零", "壹 ...