gpt4 book ai didi

elasticsearch - 在 elasticsearch 上通过类似 UUID 格式的字段查询

转载 作者:行者123 更新时间:2023-11-29 02:48:53 25 4
gpt4 key购买 nike

我已经为动态创建的文档建立了索引,所以我的意思是映射是在创建新字段的同时创建的(动态)。

{
"user":"living_team",
"timestamp":"2015-12-14T18:06:47.085Z",
"matter":"snip2.PNG",
"comment":"Archive",
"channel":"Feina",
"feedTypes":[
20
],
"property_general_ldate":"2015-12-14T18:06:47.085Z",
"property_tSize":7595.0,
"resources":[
{
"timestamp":"2015-12-14T16:58:00.598Z",
"matter":"snip2.PNG",
"comment":"Archive",
"channel":"Feina",
"feedType":20,
"mime":"image/png",
"source":{
"sourceId":{
"id":"C:\\Users\\Beep\\Desktop\\share\\snip2.PNG",
"batch":"c38eec2d-a282-11e5-baf4-382c4ab9e433",
"client":"VIM12HCNZL"
},
"feedType":20,
"property_folder":"C:\\Users\\Beep\\Desktop\\share",
"property_lastAccessFolder_ldate":1450111821506
},
"property_size":7595.0,
"property_creation_ldate":"2015-12-14T16:50:20.578Z",
"property_name":"snip2.PNG",
"nestedResources":[

]
}
]

我需要获取以下文件:resources.source.sourceId.id 正好是“X”。我试过这个查询,但它的结果是空的。

curl -XGET 'http://ESNode01:9201/living_team/inputs/_search?pretty' -d '{
"query":{
"filtered":{
"query":{
"term":{
"resources.source.sourceId.batch":"3fcb8905-a307-11e5-88de-382c4ab9e433"
}
},
"filter":{
"match":{
"channel":"FeINa"
}
}
}
}
}'

最佳答案

这与 your other question 中的问题相同,即 resources.source.sourceId.batch 字符串字段已创建为 analyzed 字段,因此值为 c38eec2d-a282-11e5-baf4-382c4ab9e433 已被标记为五个标记 c38eec2da28211e5baf4 382c4ab9e433.

处理此问题的正确方法是为该字段设置特定的 not_analyzed 映射。

另一种临时方法是使用具有完全匹配的 query_string 查询:

curl -XGET 'http://ESNode01:9201/living_team/inputs/_search?pretty' -d '{
"query":{
"filtered":{
"query":{
"query_string":{
"query": "resources.source.sourceId.batch:\"3fcb8905-a307-11e5-88de-382c4ab9e433\""
}
},
"filter":{
"match":{
"channel":"FeINa"
}
}
}
}
}'

关于elasticsearch - 在 elasticsearch 上通过类似 UUID 格式的字段查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34285705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com