📜  SQL Server 中的 DATEDIFF()函数(1)

📅  最后修改于: 2023-12-03 15:20:15.009000             🧑  作者: Mango

SQL Server 中的 DATEDIFF() 函数

在 SQL Server 中,DATEDIFF() 函数用于计算两个日期之间的时间间隔。它的语法如下:

DATEDIFF(interval, startdate, enddate)

参数:

  • interval:时间间隔类型,可以是 year、quarter、month、day、week、hour、minute 或 second;
  • startdate:起始日期;
  • enddate:结束日期。

返回值:

两个日期之间的时间间隔(整数值)。

示例

以下是使用 DATEDIFF() 函数的示例:

-- 计算两个日期之间的天数
SELECT DATEDIFF(day, '2021-01-01', '2021-05-31') AS Days
-- 输出结果为: 151

-- 计算两个日期之间的月数
SELECT DATEDIFF(month, '2000-01-01', '2021-07-31') AS Months
-- 输出结果为: 255

-- 计算两个日期之间的年数
SELECT DATEDIFF(year, '1990-01-01', '2021-07-31') AS Years
-- 输出结果为: 31
注意事项
  • 如果 enddate 小于 startdate,则返回值为负数。
  • 对于 interval 参数,可以使用全称(例如:year)或缩写(例如:yy)。
  • DATEDIFF() 函数按整数来计算日期之间的差值,无法计算出具体的时间差(例如:11小时22分钟)。如果需要计算具体的时间差,可以使用其他函数,例如:TIMEDIFF()。

总之,DATEDIFF() 函数是 SQL Server 中常用的日期函数之一,可以方便地计算出两个日期之间的时间间隔,为数据分析和报表制作提供了便利。