DATEADD是SQL Server的一个函数,可以方便地将日期和时间增加指定的时间间隔。这个函数的语法是:
```
DATEADD(datepart, number, date)
```
其中,datepart表示时间间隔的单位,可以是year、quarter、month、week、day、hour、minute、second或millisecond。number是要增加的数量,可以是正数表示加,也可以是负数表示减。date是要增加的日期或时间。
下面就来详细介绍一下如何使用DATEADD函数在SQL中增加日期和时间。
1. 增加年份
要增加某一年份,可以使用year作为datepart,例如:
```
SELECT DATEADD(year, 3, '2021-01-01')
-- 结果为'2024-01-01'
```
这里就是将日期'2021-01-01'增加了三年,得到了'2024-01-01'。
2. 增加季度
要增加某一个季度,可以使用quarter作为datepart,例如:
```
SELECT DATEADD(quarter, 2, '2021-01-01')
-- 结果为'2021-07-01'
```
这里就是将日期'2021-01-01'增加了两个季度,得到了'2021-07-01'。
3. 增加月份
要增加某一个月份,可以使用month作为datepart,例如:
```
SELECT DATEADD(month, 6, '2021-01-01')
-- 结果为'2021-07-01'
```
这里就是将日期'2021-01-01'增加了六个月,得到了'2021-07-01'。
4. 增加周数
要增加某一个周数,可以使用week作为datepart,例如:
```
SELECT DATEADD(week, 4, '2021-01-01')
-- 结果为'2021-01-29'
```
这里就是将日期'2021-01-01'增加了四周,得到了'2021-01-29'。
5. 增加天数
要增加某一天数,可以使用day作为datepart,例如:
```
SELECT DATEADD(day, 30, '2021-01-01')
-- 结果为'2021-01-31'
```
这里就是将日期'2021-01-01'增加了30天,得到了'2021-01-31'。
6. 增加小时数
要增加某一小时数,可以使用hour作为datepart,例如:
```
SELECT DATEADD(hour, 2, '2021-01-01 12:00:00')
-- 结果为'2021-01-01 14:00:00'
```
这里就是将时间'12:00:00'增加了两个小时,得到了'14:00:00'。
7. 增加分钟数
要增加某一分钟数,可以使用minute作为datepart,例如:
```
SELECT DATEADD(minute, 30, '2021-01-01 12:00:00')
-- 结果为'2021-01-01 12:30:00'
```
这里就是将时间'12:00:00'增加了30分钟,得到了'12:30:00'。
8. 增加秒数
要增加某一秒数,可以使用second作为datepart,例如:
```
SELECT DATEADD(second, 10, '2021-01-01 12:00:00')
-- 结果为'2021-01-01 12:00:10'
```
这里就是将时间'12:00:00'增加了10秒,得到了'12:00:10'。
9. 增加毫秒数
要增加某一毫秒数,可以使用millisecond作为datepart,例如:
```
SELECT DATEADD(millisecond, 500, '2021-01-01 12:00:00')
-- 结果为'2021-01-01 12:00:00.500'
```
这里就是将时间'12:00:00'增加了500毫秒,得到了'12:00:00.500'。
总结
通过DATEADD函数,我们可以方便地在SQL中增加日期和时间。我们只需要指定要增加的时间间隔以及数量,就可以得到增加后的日期和时间。值得注意的是,增加年份、季度、月份、周数、天数、小时数、分钟数、秒数和毫秒数的方法是相同的,只需要更改对应的datepart即可。