elasticsearch 嵌套查询以在bool中写入must和should
我想写一个查询,它将产生如下结果。Bool查询只接受boolquerydescriptor。我想用两个BoolQueryDescriptor来代替
elasticsearch 嵌套查询以在bool中写入must和should,
elasticsearch,nest,
elasticsearch,Nest,我想写一个查询,它将产生如下结果。Bool查询只接受boolquerydescriptor。我想用两个BoolQueryDescriptor来代替 { "query": { "bool": { "must": [ { "term": { "id": "idValue" } } ],
{
"query": {
"bool": {
"must": [
{
"term": {
"id": "idValue"
}
}
],
"should": [
{
"nested": {
"path": "nestedType",
"query": {
"match": {
"item2": "item2Value"
}
},
"inner_hits": {}
}
}
]
}
}
}
var results=client.Search(sd=>sd
.Query(q=>q
.Bool(b=>b
.Must(m=>m
.术语(“id”、“idValue”))
.Should(s=>s
.Nested(nq=>nq
.Path(“嵌套类型”)
.Query(qd=>qd
.Match(m=>m
.OnField(“第2项”)
.Query(“item2Value”))
.InnerHits());
您只需要一个描述符!到目前为止您尝试了什么?是的,我们只需要一个可以链接的描述符。我正在尝试&&和。。。。
var results = client.Search<object>(sd => sd
.Query(q => q
.Bool(b => b
.Must(m => m
.Term("id", "idValue"))
.Should(s => s
.Nested(nq => nq
.Path("nestedType")
.Query(qd => qd
.Match(m => m
.OnField("item2")
.Query("item2Value")))
.InnerHits()))));