DATEDIFF(SSIS 表达式)
适用于:SQL Server Azure 数据工厂中的 SSIS Integration Runtime
返回两个指定日期之间所跨的日期和时间边界的数目。 datepart 参数标识要比较的日期和时间边界。
语法
DATEDIFF(datepart, startdate, endate)
参数
datepart
此参数指定对日期的哪一部分进行比较并为其返回值。
startdate
此参数表示间隔的开始日期。
endate
此参数表示间隔的结束日期。
结果类型
DT_I4
备注
下表列出了表达式计算器可以识别的日期部分和缩写形式。
datepart | 缩写形式 |
---|---|
Year | yy、yyyy |
Quarter | qq、q |
Month | mm、m |
Dayofyear | dy、y |
天 | dd、d |
周 | wk、ww |
星期 | dw、w |
小时 | Hh |
Minute | mi、n |
秒 | ss、s |
Millisecond | Ms |
如果任何参数为空,则 DATEDIFF 返回的结果为空。
日期文字必须显式转换为日期数据类型之一。 有关详细信息,请参阅 Integration Services 数据类型。
如果日期无效、日期或时间单元不是字符串、开始日期不是日期或结束日期不是日期,都将发生错误。
如果结束日期早于开始日期,则此函数返回负数。 如果开始日期等于结束日期或两者在同一间隔内,则此函数返回零。
SSIS 表达式示例
此示例计算两个日期文字之间的天数。 如果日期是“mm/dd/yyyy”格式,此函数返回 7。
DATEDIFF("dd", (DT_DBTIMESTAMP)"8/1/2003", (DT_DBTIMESTAMP)"8/8/2003")
此示例返回一个日期文字与当前日期之间的月数。
DATEDIFF("mm", (DT_DBTIMESTAMP)"8/1/2003",GETDATE())
此示例返回 ModifiedDate 列中的日期与 YearEndDate 变量之间的周数。 如果 YearEndDate 具有 date 数据类型,则不需要显式转换。
DATEDIFF("Week", ModifiedDate,@YearEndDate)
另请参阅
DATEADD(SSIS 表达式)
DATEPART(SSIS 表达式)
DAY(SSIS 表达式)
MONTH(SSIS 表达式)
YEAR(SSIS 表达式)
函数(SSIS 表达式)
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈