27 March 2018

SQL - Find last SQL Server restart (SQL Server uptime)

To find the SQL Server uptime:

SELECT   crdate AS startup 
  , + CAST((DATEDIFF(hh, crdate, GETDATE())) / 24 AS varchar(3)) + ' days and '
    + CAST((DATEDIFF(hh, crdate, GETDATE())) % 24 AS varchar(2)) + ' hours' AS days
FROM master..sysdatabases
WHERE name = 'tempdb'
Returns:
startup                 days
----------------------- ---------------------
2018-02-04 15:51:37.653 50 days and 20 hours


Works on Sql Server 2005 onward.