C# Mongodb 查找集合中的最近时间
本文关键字:最近 时间 集合 Mongodb 查找 | 更新日期: 2023-09-27 18:32:28
我有一个包含DateTime
的集合。
public class Trade
{
public ObjectId Id { get; set; }
public DateTime Expiary { get; set; }
}
我正在使用 c# 驱动程序,我想从 Trade
集合中获取最接近的到期。在 mongodb 中是否有可能将最接近给定日期的日期带到给定日期?更新类似的东西
collection.FindClosest(x => x.Expiary , DateTime.Now.AddDays(-1))
如果我理解正确,"最近日期"可以被认为是:
var record = tests.Find(p => p.Date <= closestTo)
.SortByDescending(p => p.Date)
.FirstOrDefault();
当然,可能会有一个文档的日期"更接近"您正在寻找的更高界限,但"未来"到您的过滤器,在这种情况下,您将跳过并获取最接近的较旧的日期。如果你的要求真的要求你得到那件东西,我必须说我不知道这样做的"Mongo方式"。可以通过运行此查询两次来完成,第二次顺序颠倒(和 .日期>最近到),并在进程中验证两个对象中的哪一个最接近。