• How about this (sorry, but I didn't work with your query):

    select

    *,

    cast(cast(run_date as varchar) + ' ' + stuff(stuff(right('000000' + cast(run_time as varchar),6),5,0,':'),3,0,':') as datetime)

    from

    msdb.dbo.sysjobhistory;