Here's a one-command approach for the first one I did. It's uglier, but you don't have to call any procedures / functions.
select convert(char(8),
convert(datetime,
convert(datetime, stuff(stuff('154040',3,0,':'),6,0,':')) -
convert(datetime, stuff(stuff('133737',3,0,':'),6,0,':'))),
108)
Wayne
Microsoft Certified Master: SQL Server 2008
Author - SQL Server T-SQL Recipes