我有一个PurchaseOrder
类型,可以有0个或多个VendorStatuses
。我想创建一个过滤器,找到{strong>没有 PurchaseOrders
的{{1}}。我怎么能这样做?
我尝试过的事情:
VendorStatuses
索引中有40条记录,我知道至少有一条记录没有供应商状态,但这些查询全部或全部都没有返回。我该如何实现呢?
我们正在使用Nest 1.7.2和Elasticsearch版本1.4.5
答案 0 :(得分:0)
一位同事找到了办法。我们发现如果我们否定返回所有具有状态的记录的过滤器,它就可以工作了。我没有意识到你可以简单地否定这样的过滤器。
Filter &= !Filter<PurchaseOrder>.Nested(nfd => nfd.Path(x => x.VendorStatuses.First())
.Filter(f2 => f2.Missing(y => y.Id)));