sql server 数字加千分位,小数位为0不显示

sql server 数字加千分位,小数位为0不显示  例如  11111.10 — 11,111.1

create function [dbo].[GetNumber](@str nvarchar(200))
returns nvarchar(200)
as
begin
declare @num int
declare @s nvarchar(200)
set @num = 0
if(charindex('.',@str,0) <> 0) --判断是否有.
begin
while(@num<1)
begin
if(substring(@str,len(@str),1) = '0') --最后一位是0时,去掉最后一位
begin
set @str = left(@str,LEN(@str)-1) --删除最后一位字符
end
else if(substring(@str,len(@str),1) = '.') --最后一位是.时,去掉最后一位
begin
set @str = left(@str,LEN(@str)-1) --删除最后一位字符
set @num = 1 --给变量赋值(不满足循环条件,循环结束)
end
else
begin
set @num = 1 --给变量赋值(不满足循环条件,循环结束)
end
end
end
set @s = @str
return @s
end

已解决

SELECT convert(varchar(20),cast(11111.10 as money),1)

select format(11111.10,'N0')