Azure DevOps WorkItemSnapshot OData查询是否支持日期运算?
Azure DevOps OData 日期运算查询说明
结论
你使用的Azure DevOps Analytics OData v3.0预览版端点支持日期算术运算,当前查询报错是因为用了SQL风格的DATEADD写法,不符合OData的语法规范。
修正后查询
https://analytics.dev.azure.com/MyOrg/MyProject/_odata/v3.0-preview/WorkItemSnapshot? $apply=filter( WorkItemType eq 'User Story' and startswith(Area/AreaPath,'MyProject') and DateValue gt Iteration/EndDate and DateValue lt Iteration/EndDate add durations'P1D' and DateValue ge 2021-06-01Z ) /groupby( (Iteration/IterationPath,Area/AreaPath,WorkItemType,State,DateValue), aggregate($count as Count, StoryPoints with sum as TotalStoryPoints) )
核心改动点:把
DATEADD(day,1,Iteration/EndDate)替换成OData标准的日期增量写法Iteration/EndDate add durations'P1D',P1D是ISO 8601标准的时长格式,代表1天。
注意事项
- 如果你的日期字段带有时分秒偏移,可以按需调整时长格式,比如
PT12H代表加12小时 - 如果后续升级到OData v4.0以上版本,也可以用标准
dateadd函数:dateadd(day, 1, Iteration/EndDate),提前确认端点版本支持即可 - 日期比较时注意统一时区,避免时区偏移导致筛选范围不准
内容的提问来源于stack exchange,提问作者sandyteenan
相关产品推荐
相关产品推荐

