连接在SQL Server中的函数内部不起作用

Man*_*ngh 0 sql sql-server

我将分钟转换为数天和数小时.当我使用以下代码时,它工作正常

declare @theMinutes int
Set @theMinutes = 1449 

select cast(@theMinutes / 1440  as varchar)
        + ' Day(s) '+ cast((@theMinutes % 1440 / 60) as varchar)      
        + ' Hour(s) '+ cast(@theMinutes % 60    as varchar)    
        + ' Minute(s)' AS COLUMN_A
Run Code Online (Sandbox Code Playgroud)

并显示结果

1 Day(s) 0 Hour(s) 9 Minute(s)
Run Code Online (Sandbox Code Playgroud)

但是当我使用它来编写一个函数时,它只返回1,其余的东西都没有连接起来

Create function [dbo].[ConvertMinToDays]
(
    @theMinutes int
)
RETURNS varchar
AS
BEGIN   
    Declare @convertedStr varchar(200)

    SET @convertedStr =  cast(@theMinutes / 1440  as varchar(10)) + ' Day(s) ' 
    + cast((@theMinutes % 1440 / 60) as varchar(10))+ ' Hour(s) ' 
    + cast(@theMinutes % 60 as varchar(10)) + ' Minute(s)';  

    return  @convertedStr;

END

GO

SELECT dbo.ConvertMinToDays(1449) as COLUMN_A
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我,我哪里错了?

tsh*_*ake 5

更改

RETURNS varchar
Run Code Online (Sandbox Code Playgroud)

RETURNS varchar(200)
Run Code Online (Sandbox Code Playgroud)

我假设它只会返回一个字符