【发布时间】:2020-05-28 11:41:11
【问题描述】:
我尝试 concat 2 字符串并将其反转,但结果我得到 NULL 而不是文本 例如。第一个字符串“a1” 第二个字符串“b2” 结果“21ba”
CREATE function addToString(@val1 varchar(100),@val2 varchar(100))
returns varchar(200)
as
begin
declare @i as int
declare @output as varchar(200)
if len(@val1)!=len(@val2)
set @output='length error: '+cast(len(@val1) as varchar(10))+
'<>'+cast(len(@val2) as varchar(10))
else
select @i=len(@val1)-1
while @i>=0
begin
set @output= concat(@output,substring(@val2,@i,1))
set @output= concat(@output,substring(@val1,@i,1))
set @i=@i-1
end
return @output
end
go
select dbo.[addToString]('a1','b2') as txt
【问题讨论】:
-
用您正在使用的数据库(可能是 SQL Server)标记您的问题。您还应该解释代码应该做什么并提供示例数据和所需的结果。
标签: sql sql-server concatenation varchar