SQL Server DATEDIFF()方法?

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

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

什么是SQL DATEDIFF()函数?

DATEDIFF()帮助我们估计作为参数传递给函数的日期之间的差异。

该函数以年,月,日或者时间为单位计算日期之间的差异。

SQL DATEDIFF()函数的语法

为了操作DATEDIFF()函数,我们需要遵循以下命令。

DATEDIFF(date_section, 'date1', 'date2');

  • date_section:这是日期和时间戳中需要进行比较的部分。

以下date_section可用于比较:

date_section
year
second
month
week
day
dayofyear
hour
minute
quarter
millisecond
microsecond
nanosecond

传递的日期值的格式如下

yyyy/mm/dd

了解了SQL DATEDIFF()函数的工作原理之后,我们就可以开始实现它了。

SQL Server DATEDIFF()的示例

现在让我们分析DATEDIFF()函数的实现和执行。

SQL DATEDIFF()函数以"年"为间隔

SELECT DATEDIFF(year, '2017/5/20', '2025/10/15') AS Output;

在此示例中,我们以" year"作为间隔,这导致在函数参数中传递的年份之间存在差异。

输出:

5

DATEDIFF()函数,以"月"为间隔

SELECT DATEDIFF(month, '2017/5/20', '2017/10/15') AS Output;

上面的示例返回经过的日期间隔的月份之间的差。

输出:

5

SQL DATEDIFF()函数,以" dayofyear"为间隔

例:

SELECT DATEDIFF(dayofyear, '2017/5/20', '2017/10/15') AS Output;

输出:

148

SQL DATEDIFF()函数,以"小时"为间隔

间隔小时导致计算两个经过的时间戳之间的小时差。

例:

SELECT DATEDIFF(hour, '2017/5/20 08:00', '2017/5/20 15:00') AS Output;

输出:

7

SQL Server DATEDIFF()函数以"周"为间隔

"周"间隔计算两个给定时间戳之间存在的周数。

例:

SELECT DATEDIFF(week, '2017/5/20', '2017/6/20') AS Output;

输出:

4

总结

  • SQL Server DATEDIFF()函数将日期和时间值作为参数处理。

  • 此外,如果我们尝试将一些非日期格式的值传递给该函数,则编译器会引发错误。

  • 当我们需要估计时间戳的不同date_section之间的差异时,DATEDIFF()函数必不可少。