如何在RavenDB中基于当前日期查询文档?
在RavenDB中基于当前日期查询文档的实现方案
完全可以直接通过RavenDB的RQL(Raven查询语言)实现基于当前日期的文档查询,无需在代码中提前处理日期值。
核心写法示例
针对你提出的“查询变更日期早于5天前”的需求,正确的RQL语句如下:
from someCollection where changeDate < today() - 5 days
关键语法说明
- 内置日期函数:RavenDB提供
today()和now()两个核心函数,today()返回当前日期的午夜零点时刻,now()返回当前精确到毫秒的时间。 - 时间跨度计算:支持直接对日期函数进行加减操作,时间单位无需加引号,可使用
days、hours、minutes、seconds等,也支持组合写法,比如today() - 1 day 6 hours。
扩展场景示例
- 查询变更日期早于30分钟前的文档:
from someCollection where changeDate < now() - 30 minutes - 查询最近7天内变更的文档:
from someCollection where changeDate >= today() - 7 days
内容的提问来源于stack exchange,提问作者Jan B.
相关产品推荐
相关产品推荐

