OData $filter写法咨询:筛选_UpdatedTime近2天更新数据的URI配置
OData 基于更新时间增量筛选的正确$filter写法
标准正确表达式(适配OData v4及以上版本)
_UpdatedTime ge addDays(now(), -2)
原写法报错原因说明
- 无需给函数添加
Edm.DateTimeOffset前缀,OData内置时间函数可直接调用 now()是OData内置系统函数,不需要用单引号包裹,加引号会被识别为普通字符串,无法触发函数计算- 内置函数
addDays的参数顺序为「基础时间值, 增减天数」,直接传入now()作为第一个参数即可
低版本兼容方案
如果你的数据源使用的是OData v3及更旧版本,或是服务端禁用了内置时间函数,可以在本地先计算好2天前的DateTimeOffset值,格式化为ISO 8601标准格式(末尾带时区标识,UTC时间加Z,例如2024-05-17T08:00:00Z)后直接拼接进筛选条件:
_UpdatedTime ge 2024-05-17T08:00:00Z
这种写法兼容所有OData版本,稳定性更高,更适合定时增量同步的生产场景使用。
内容的提问来源于stack exchange,提问作者Jonnooo
相关产品推荐
相关产品推荐

