;WITH CTE AS
(
SELECT
DATEDIFF(SECOND,sqlserver_start_time,GETDATE()) AS started_last_time_s
FROM sys.dm_os_sys_info
)
,CTE2 AS
(
SELECT
started_last_days = started_last_time_s / 86400,
started_last_time_s = started_last_time_s - (started_last_time_s / 86400) * 86400
FROM CTE
)
,CTE3 AS
(
SELECT
started_last_days,
started_last_hours = started_last_time_s / 3600,
started_last_time_s = started_last_time_s - (started_last_time_s / 3600) * 3600
FROM CTE2
)
,CTE4 AS
(
SELECT
started_last_days,
started_last_hours,
started_last_minutes = started_last_time_s / 60,
started_last_time_s = started_last_time_s - (started_last_time_s / 60) * 60
FROM CTE3
)
,CTE5 AS
(
SELECT
started_last_days,
started_last_hours,
started_last_minutes,
started_last_seconds = started_last_time_s
FROM CTE4
)
SELECT
sqlserver_start_last_time = RTRIM(started_last_days) + ' days '
+ RTRIM(started_last_hours) + ' hours '
+ RTRIM(started_last_minutes) + ' minutes '
+ RTRIM(started_last_seconds) + ' seconds'
FROM CTE5
在我的机器下,运行结果为:
sqlserver_start_last_time
------------------------------------------------------------------------------
5 days 11 hours 27 minutes 47 seconds
(1 row(s) affected)