SQL Server · 2016-04-14

T-SQL – Get Currently Running Jobs With Duration

Query to get all currently running jobs with their run duration in seconds.

Source: http://www.sanssql.com/2013/08/t-sql-query-to-find-currently-running.html

SELECT
		[J].[name] AS [Running_Jobs] ,
		[JA].[Start_execution_date] AS [Starting_time] ,
		DATEDIFF(ss, [JA].[Start_execution_date], GETDATE()) AS [Has_been_running(in Sec)]
	FROM
		[msdb].[dbo].[sysjobactivity] [JA]
	JOIN [msdb].[dbo].[sysjobs] [J]
		ON [J].[job_id] = [JA].[job_id]
	WHERE
		[job_history_id] IS NULL
		AND [start_execution_date] IS NOT NULL
	ORDER BY
		[start_execution_date];