我正在努力实现类似
.Where(m => m.PublishedDate.Value < m.LastUpdatedDate)
在弹性搜索中。这里PublishedDate
可以为空。
到目前为止,我已经尝试了以下方法,但它似乎不起作用。
var res2 = client.Search<Campaign>(c => c
.Source(s => s.Includes(i => i
.Field(f => f.CampaignId)
.Field(f => f.Offers.First().DateLastUpdated)
.Field(f => f.Offers.First().DateLastPublished)))
.Query(q => q
.Bool(b => b
.Must(m => m.Exists(t => t.Field(f => f.Offers.First().DateLastPublished)))
.Must(m => m.Term(t => t.Offers.First().DateLastPublished.Value < t.Offers.First().DateLastUpdated, true))
.Should(s =>
s.Term(t => t.Offers.First().Approved, true), s =>
s.Term(t => t.Offers.First().Deleted, true))
.MinimumShouldMatch(new MinimumShouldMatch(1))))
.Size(1000)
);
有人可以帮忙吗?谢谢