SQL Server 中的 DATEDIFF()函数
原文:https://www . geesforgeks . org/datediff-function-in-SQL-server/
DATEDIFF()函数: SQL Server 中的这个函数是用来查找两个指定日期的差异。
特征:
- 该函数用于查找两个给定日期值之间的差异。
- 该功能属于日期功能。
- 该函数接受三个参数,即间隔、第一个日期值和第二个日期值。
- 该函数可以在时间间隔部分和日期值部分包含时间。
语法:
DATEDIFF(interval, date1, date2)
参数: 该方法接受如下三个参数:
-
间隔:是要退回的指定部分。此外,区间的值可以如下给出:
-
年份,yyyy,yy = Year,这是指定的年份。
- 季度,qq,q = Quarter,这是指定的季度。
- 月,mm,m =月,即指定的月份。
- dayofyear,dy,y =一年中的某一天,这是一年中指定的一天。
- day,dd,d = Day,这是指定的日期。
- week,ww,wk = Week,这是指定的一周。
- weekday,dw,w = Weekday,这是指定的星期几。
- 小时,hh =小时,这是指定的小时。
- 分钟,mi,n =分钟,这是指定的分钟。
- second,ss,s = Second,这是指定的秒。
-
毫秒,ms =毫秒,这是指定的毫秒。
-
日期 1、日期 2 : 两个指定的日期,以便找出它们之间的区别。
返回: 返回两个指定日期的差值。
示例-1 : 使用 DATEDIFF()函数并获取两个日期值之间的差值,单位为年。
SELECT DATEDIFF(year, '2010/01/12', '2021/01/12');
输出:
11
示例-2 : 使用 DATEDIFF()函数并获取两个日期值之间的差值,以月为单位。
SELECT DATEDIFF(month, '2010/2/12', '2021/12/12');
输出:
142
示例-3 : 使用 DATEDIFF()函数并获取两个日期值之间的负差,单位为天。
SELECT DATEDIFF(day, '2021/2/1', '2010/12/12');
输出:
-3704
示例-4 : 使用 DATEDIFF()函数,得到两个日期值之间的差值,其中也包括时间,单位为小时。
SELECT DATEDIFF(hour, '2019/2/1 09:55', '2020/12/12 07:45');
输出:
16318
示例-5 : 使用 DATEDIFF()函数,并使用包含时间的变量获得两个日期值之间的差值,单位为秒。
DECLARE @date1 VARCHAR(50);
DECLARE @date2 VARCHAR(50);
SET @date1 = '2019/2/1 09:55:44';
SET @date2 = '2020/12/12 07:45:22';
SELECT DATEDIFF(second, @date1, @date2);
输出:
58744178
应用: 此函数用于查找两个指定日期值之间的差异。
版权属于:月萌API www.moonapi.com,转载请注明出处