秒到秒SQL Server

秒到秒SQL Server,sql,sql-server,Sql,Sql Server,此函数用于在SQL Server中将秒转换为时间: Create function [dbo].[SEC_TO_TIME](@seconds1 INT) returns VARCHAR(8) As Begin DECLARE @time1 VARCHAR(8); SET @time1 SELECT CONVERT(VARCHAR(8), DATEADD(second, @seconds1, 0), 108); return @time1; end GO 但我有一个

此函数用于在SQL Server中将秒转换为时间:

Create function [dbo].[SEC_TO_TIME](@seconds1 INT)
returns VARCHAR(8)
As
Begin 
    DECLARE @time1 VARCHAR(8);
    SET @time1  SELECT CONVERT(VARCHAR(8), DATEADD(second, @seconds1, 0), 108);
    return @time1;
end 
GO
但我有一个错误:

Msg 156,15级,状态1,程序秒到秒时间,第7行 关键字“SELECT”附近的语法不正确

我尝试执行这个查询,效果很好

SELECT CONVERT(VARCHAR(8), DATEADD(second, 180, 0), 108);
您能帮我修复这个错误吗?

将datetime返回为varchar是个坏主意

Create function [dbo].[SEC_TO_TIME](@seconds1 INT)
returns datetime
As
Begin 
    RETURN DATEADD(second, @seconds1, 0)
end 
Create function [dbo].[SEC_TO_TIME](@seconds1 INT)
returns VARCHAR(8)
As
Begin 
    DECLARE @time1 VARCHAR(8)
    SET @time1=CONVERT(VARCHAR(8), DATEADD(second, @seconds1, 0), 108)
    return @time1
end 
GO