Сумма работает в ц.Измените тип данных на int, и он должен работать для вас.
CREATE FUNCTION [dbo].[DECODE]
(@Val1 int,@Val2 int,@Val3 int,@Val4 int)
RETURNS int
AS
BEGIN
RETURN
(
Select case @Val1 When @Val2 then @Val3 else @Val4 end
)
END
Или приведите результат к int в сумме
select sum(cast(dbo.decode('1','1','3','4') as int))