SQL Server DATEADD()函数?

时间:2020-02-23 14:32:26  来源:igfitidea点击:

在本文中,我们将重点关注SQL Server DATEADD()函数。

什么是SQL DATEADD()函数?

SQL Server DATEADD()函数将特定的值添加到传递给该函数的日期输入中,并返回更新/修改后的值。

DIFFADD()函数将自定义值添加到时间戳部分,例如年,日,月,周,小时,分钟等。

SQ DATEADD()函数的语法

DATEADD(date_section, interval, date);

  • date_section:这包括日期中要添加值的部分。

  • "间隔":指必须添加到日期部分的值。

  • date:需要以" yyyy/mm/dd"的形式传递的日期。

DATEADD()函数将在其上添加间隔值后将返回更新的时间戳。

SQL Server DATEADD()的示例

在了解了SQL Server DATEADD()函数的语法之后,让我们通过各种示例来实现该函数。

SQL DATEADD()函数以" year"作为date_section

在下面的示例中,我们使用"年"作为日期部分,其间隔为1,即将1加到所传递时间戳的年份中。

SELECT DATEADD(year, 1, '2017/10/15') AS Output;

输出:

2021-10-15T00:00:00Z

SQL Server DATEADD()函数以" hour"作为date_section

在此示例中,我们将"小时"用作date_section,即,将提供的间隔添加到时间戳的小时中。

SELECT DATEADD(hour, 2, '2017/10/15 17:20:20') AS Output;

输出:

2017-10-15T19:20:20Z

SQL DATEADD()函数以" month"作为date_section

其中我们使用month作为日期部分,并将2的间隔添加到所传递时间戳的月份中。

SELECT DATEADD(month, 2, '2017/10/15 17:20:20') AS Output;

输出:

2017-12-15T17:20:20Z

SQL DATEADD()函数以" dayofyear"作为date_section

在此示例中,我们将dayofyear用作date_section,间隔将其相加起来成为时间戳的日期值。

SELECT DATEADD(dayofyear, 2, '2017/10/15 17:20:20') AS Output;

输出:

2017-10-17T17:20:20Z

SQL Server DATEADD()函数的间隔值为负

除了在时间戳记/日期中添加间隔外,我们甚至可以通过使用负间隔减去间隔值来减少日期值。

SELECT DATEADD(year, -2, '2017/10/15 17:20:20') AS Output;

结果,"年"在输出中减少了2个间隔。

输出:

2016-10-15T17:20:20Z