You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power BI内嵌SQL脚本中日期区间查询失效求助

解决Power BI中SQL脚本筛选近30天数据的问题

正确SQL脚本写法

针对SQL Server数据源,替换原有的INTERVAL语法,使用SQL Server原生的DATEADD函数实现近30天数据筛选:

WHERE dateColumn > DATEADD(DAY, -30, CURRENT_DATE)

如果需要精确处理包含时间的日期字段,可结合CAST函数确保日期范围准确:

WHERE dateColumn >= DATEADD(DAY, -30, CAST(GETDATE() AS DATE))

原写法失效的原因

原语句中的INTERVAL '30' DAY是PostgreSQL、MySQL等数据库的语法,SQL Server不支持该格式,因此在Power BI连接SQL Server数据源时必须使用SQL Server兼容的日期函数。

BETWEEN写法的修正

若坚持使用BETWEEN,需确保日期边界的格式匹配,避免因时间部分导致数据遗漏:

WHERE dateColumn BETWEEN DATEADD(DAY, -30, CURRENT_DATE) AND CURRENT_DATE

注:如果dateColumn包含时间戳,CURRENT_DATE会默认转换为当天00:00:00,此时会漏掉当天00:00:00之后的数据,更推荐使用>或>=的方式。

内容的提问来源于stack exchange,提问作者Luntas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 10:24:54