sql server里有一个DATEADD 函数,通过该函数可增加减少时间,语法如下:
参数- datepart
指定要与数值相加的日期部分的参数。
- number
用于与 datepart 相加的值。该值必须是分析表达式时已知的整数值。
- date
返回有效日期或日期格式的字符串的表达式。
结果类型
备注
日期部分 | 缩写 |
---|
Year | yy、yyyy |
Quarter | qq、q |
Month | mm、m |
Dayofyear | dy、y |
Day | dd、d |
Week | wk、ww |
Weekday | dw、w |
Hour | Hh |
Minute | mi、n |
Second | ss、s |
Millisecond | Ms |
分拆表达式时必须提供 number 参数。该参数可以是常量,也可以是变量。由于分析表达式时列值是未知的,因此不能使用列值。
datepart 参数必须用英文引号括起来(在 SQL SERVER2008环境测试发现,该参数加引号提示错误,不加引号正确)。
日期文字必须显式转换为日期数据类型之一。有关详细信息,请参阅 Integration Services 数据类型。
注意: |
---|
在日期文本显式转换为以下日期数据类型之一时,表达式验证失败:DT_DBTIMESTAMPOFFSET、DT_DBTIMESTAMP2 和 DT_DBTIME2。 |
如果参数为空,则 DATEADD 返回空结果。
如果日期无效,日期或时间单元不是字符串,或者增量不是静态整数,则会发生错误。
示例
xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5" 5:content ddue.schemas.microsoft.com authoring 2003>
以下示例将当前日期加上一个月。
| |
---|
DATEADD("Month", 1,GETDATE()) 如果提示错误,可试试 | |
---|
DATEADD(Month, 1,GETDATE()) 以下类同。 |
|
以下示例将 ModifiedDate 列中的日期加上 21 天。
| |
---|
DATEADD("day", 21, ModifiedDate) |
以下示例将文字日期加上 2 年。
| |
---|
DATEADD("yyyy", 2, (DT_DBTIMESTAMP)"8/6/2003") |
5:content ddue.schemas.microsoft.com authoring 2003>