0
我想使用彈性搜索,我卡住試圖查詢嵌套的對象。彈性搜索嵌套對象映射和查詢搜索
基本上我的目的是以下格式我用於嵌套字段
{
"name" : "Some Name",
"field2": [
{
"prop1": "val1",
"prop2": "val2"
},
{
"prop1": "val3",
"prop2":: "val4"
}
]
}
映射的是以下內容。
PUT /someval/posts/_mapping
{
"posts": {
"properties": {
"field2": {
"type": "nested"
}
}
}
}
現在說我插入了/域元素/職位/ 1 /場/職位/ 2等我有field2.prop1的k值,我想查詢它獲取排序的職位基於最匹配field2.prop1之間的K值我有。什麼是適當的查詢。 另外我嘗試了一個簡單的過濾器,但即使這似乎沒有正確工作。
GET /someval/posts/_search
{
"query": {
"filtered": {
"query": {
"match_all": {}
}
},
"filter" : {
"nested" : {
"path" : "field2",
"filter" : {
"bool" : {
"must" : [
{
"term" : {"field2.prop1" : "val1"}
}
]
}
},
"_cache" : true
}
}
}
}
以上查詢應至少匹配第一篇文章。但它不會返回匹配。任何人都可以幫助澄清這裏有什麼錯嗎?
謝謝!有沒有可用於查詢的調試器?還有什麼方法去查詢對象數組中的大多數匹配?與我在帖子 – sriram
中發佈的帖子類似,我使用感,我不知道任何。對於下一部分,也許你會作爲單獨的問題提出,所以其他用戶很容易找到它。 – progrrammer
好的。這也起作用:) – sriram