का उपयोग कर सरणी ऑब्जेक्ट प्रकार में सटीक खोज मैं सटीक लोचदार खोज में सरणी मिलान करने का एक तरीका ढूंढ रहा हूं। की ये मेरे दस्तावेज हैं मान लीजिए:elasticsearch
{"id": 1, "categories" : ["c", "d"]}
{"id": 2, "categories" : ["b", "c", "d"]}
{"id": 3, "categories" : ["c", "d", "e"]}
{"id": 4, "categories" : ["d"]}
{"id": 5, "categories" : ["c", "d"]}
वहाँ के लिए खोज करने के लिए एक रास्ता है सभी दस्तावेज़ की है कि राशि बिल्कुल श्रेणियों "सी" और "डी" (दस्तावेजों 1 और 5), कोई और अधिक या कम?
एक बोनस के रूप: के लिए श्रेणियों "इनमें से एक" अभी भी रूप में अच्छी तरह संभव हो जाना चाहिए (उदाहरण के लिए आप "सी" के लिए खोज सकते हैं और 1, 2, 3 हो और 5)
किसी भी चालाक रास्ता के लिए सर्च कर रहे हैं इस समस्या से निपटें?
"bool" : {
"must" : {
"terms" : { "categories" : ["c", "d"],
minimum_should_match : 2
}
},
"must_not" : {
"terms" : { "categories" : ["a", "b", "e"],
minimum_should_match : 1
}
}
}
अन्यथा शायद सबसे आसान तरीका है यह पूरा करने,, मुझे लगता है, है एक और क्षेत्र एक के रूप में सेवारत स्टोर करने के लिए:
मजाकिया, कि वास्तव में मैं उसे क्या बताया था :) – phoet
@phoet तुम इतने स्मार्ट;) – paukul
@femtoRgon धन्यवाद! दुर्भाग्य से यह बुरी खबर है :) – paukul