declare @timevalues table
(
timestring NVARCHAR(10)
)
insert into @timevalues
values
('-06:34:41'),
('02:00:00'),
('01:00:00')
;
with cte
as
( select case when left(timestring,1)='-' then -1 else 1 end as multiply,
right(timestring,8) as timestring,
--get hours in seconds:
DATEPART(HOUR,right(timestring,8)) * 3600 AS h_in_s,
--get minutes in seconds:
DATEPART(MINUTE,right(timestring,8)) * 60 AS m_in_s,
--get seconds:
DATEPART(SECOND,right(timestring,8)) AS s
from @timevalues
)
select case when sum((c.h_in_s + c.m_in_s + c.s) * multiply) < 0
then '-' + CONVERT(varchar,DATEADD(s,ABS(sum((c.h_in_s + c.m_in_s + c.s) * multiply)),0),114)
else CONVERT(varchar,DATEADD(s,sum((c.h_in_s + c.m_in_s + c.s) * multiply),0),114)
end as new_time_string
from cte c
Refer below url
Thanks