If you save the value as something other than time, why not just save the number of minutes and convert to whatever format you want in the output?
Otherwise, I would suggest you just convert the value to minutes:
select (cast(left(ColumnName, 2) as int) * 60 + cast(right(ColumnName, 2) as int) ) as Minutes
If you do not use date and time values, there is no need to use functions specially designed for them.
EDIT:
To process hours longer than 99, use charindex() :
select (cast(left(ColumnName, charindex(':', ColumnName) - 1) as int) * 60 + cast(right(ColumnName, 2) as int) ) as Minutes
Gordon linoff
source share