如何编写Power Automate Get-Items OData查询筛选SharePoint日期列
核心注意点
- 必须使用列的内部名称:
_x0033_7_Day_Review_Due_Date,显示名称37_Day_Review_Due_Date无法在OData查询中生效。 - OData查询框中不能直接写函数字符串,要通过
@{}嵌入Power Automate表达式,让系统解析生成实际日期值。
正确筛选写法
1. 筛选日期等于当前UTC日期(忽略时间部分)
直接在Get Items的「Filter Query」输入框中填入:
_x0033_7_Day_Review_Due_Date eq @{formatDateTime(utcNow(), 'yyyy-MM-dd')}
2. 筛选当天及之前的记录
_x0033_7_Day_Review_Due_Date le @{formatDateTime(utcNow(), 'yyyy-MM-dd')}
3. 精确匹配含时间的日期(不推荐用于当日筛选)
如果需要精确到时间,用ISO标准格式:
_x0033_7_Day_Review_Due_Date eq @{utcNow('yyyy-MM-ddTHH:mm:ssZ')}
你之前写法的问题
- 第一种写法:把
formatDateTime函数用单引号包裹成了字符串,系统不会解析表达式,且单引号嵌套存在语法错误。 - 第二种写法:使用了列的显示名称而非内部名称,OData无法识别该字段。
- 第三种写法:这是Power Automate后续步骤中引用输出的表达式语法,不是Get Items的OData查询语法,场景用错。
内容的提问来源于stack exchange,提问作者Paul Garbenis
相关产品推荐
相关产品推荐

