# How to convert an integer to year month and days in SQL?

###### Minifycode 2021-10-03 Viewed 1.1K times SQL Server

In this article, you will learn how to convert an integer to year month and days in SQL server?

In this article, how to convert an integer to year month and days in SQL server, If you wanted something like elapsed time, you really have to do it between two dates, and not from an integer the elapsed number of months depends on whether the month has 28 to 31 days in it; same for a year some years have 365, leap years have 366 days.

``````SELECT  [YEARS ]        = DATEDIFF(YEAR,0,ET-ST)-1,

[MONTHS]        = DATEPART(MONTH,ET-ST)-1,

[DAYS]          = DATEPART(DAY,ET-ST)-1,

[HOURS]         = DATEPART(HOUR,ET-ST),

[MINUTES]       = DATEPART(MINUTE,ET-ST),

[SECONDS]       = DATEPART(SECOND,ET-ST),

[Milliseconds]  = DATEPART(millisecond,ET-ST)

FROM
(

SELECT

ST = CONVERT(datetime,'2008/09/22 00:35:33.997'),

ET = CONVERT(datetime,'2009/10/23 04:05:45.443')

) abc``````

Output

YEARS  MONTHS DAYS HOURS MINUTES SECONDS Milliseconds
0             1               0        3           30           11              447