我们正在从1.6.2升级ElasticSearch和NEST - > 2.3.3。
什么取代了我们在2.3.3中TermsExecution.And
的做法?
如何使用未知数量的需要匹配的术语轻松完成此操作?例如在你能够传入数组之前。
答案 0 :(得分:2)
TermsExecution.And
查询上的 terms
应转换为bool
查询,其must
(或filter
的结合,具体取决于查询/过滤条件)查询,每个查询都是对单个值的term
查询。
例如,
client.Search<dynamic>(s => s
.Query(q => +q
.Term("field", "value1")
&& +q
.Term("field", "value2")
)
);
产量
{
"query": {
"bool": {
"filter": [
{
"term": {
"field": {
"value": "value1"
}
}
},
{
"term": {
"field": {
"value": "value2"
}
}
}
]
}
}
}