我有下一个映射:
hallo<span> again</span>
我需要一个查询,而不是在以下情况下提供所有cr:
an.id == x和sm.id == y
我尝试过:
"c_index": {
"aliases": {},
"mappings": {
"an": {
"properties": {
"id": {
"type": "string"
},
"sm": {
"type": "nested",
"properties": {
"cr": {
"type": "nested",
"properties": {
"c": {
"type": "string"
},
"e": {
"type": "long"
},
"id": {
"type": "string"
},
"s": {
"type": "long"
}
}
},
"id": {
"type": "string"
}
}
}
}
}
}
但是运行速度很慢,并且提供的信息比我需要的更多。 最有效的方法是什么?谢谢!
答案 0 :(得分:0)
这里不需要嵌套查询。另外,如果要查找与所有查询匹配的文档,请使用filter
而不是should
(例外情况是,如果您希望查询影响得分,例如match
查询,情况并非如此,那么您可以使用should
+ minimum_should_match
选项)
{
"query": {
"bool": {
"filter": [
{ "term": { "_id": "x" } },
{ "term": { "sm.id": "y" } }
]
}
}
}