【发布时间】:2023-03-15 22:05:01
【问题描述】:
我正在使用 NEST 查询 ElasticSearch,并且正在寻找创建条件过滤器。我需要查询匹配类别以及可选的标题和章节字段。我正在汇总以获取唯一值。问题是过滤器似乎在过滤器字段上执行 OR。任何想法我在这个例子中做错了什么?
FilterContainer filter = new FilterContainer();
filter = Filter<Page>.Term("category", "1575");
if (title != null)
{
filter &= Filter<Page>.Term("title", title);
}
if (chapter != null)
{
filter &= Filter<Page>.Term("chapter", chapter);
}
var result = client.Search<Page>(s => s
.Index(index)
.Filter(filter)
.Size(0)
.Aggregations(a => a
.Terms("my_agg", st => st
.Field("title")
)
)
);
var myAgg = result.Aggs.Terms("my_agg");
IList<KeyItem> lst = myAgg.Items;
return lst;
【问题讨论】:
标签: elasticsearch aggregation nest