如何区分年,月,日的2个日期是sql

时间:2017-10-03 19:08:25

标签: sql sql-server tsql

我希望在年,月,日之间有2个日期

示例: Hirring日期:1998年7月25日 CurrentDate:30/9/2017

结果如:19年 - 2个月 - 11天

1 个答案:

答案 0 :(得分:1)

如果您对表值函数持开放态度。这种方法非常精确和高效。您永远不必担心各种日期计算。

示例或dbFiddle

lists

退货(您可以忽略或省略小时,分钟和秒)

Declare @YourTable table (ID int, hiredate date)
Insert Into @YourTable values
(1,'1998-7-25')

Select A.ID
      ,B.*
 From @YourTable A
 Cross Apply [dbo].[tvf-Date-Elapsed](A.HireDate,GetDate()) B

UDF如果有兴趣

ID  Years   Months  Days    Hours   Minutes Seconds
1   19      2       8       15      21      47