gpt4 book ai didi

sql - 如何从 SQL Server 中的字符串中删除最后一个符号。如果它是一个循环

转载 作者:行者123 更新时间:2023-12-02 11:54:43 24 4
gpt4 key购买 nike

我有一个疑问

WHILE @@fetch_status = 0 
BEGIN
SET @message =' ,' + CASE WHEN @year < 10 THEN 'socyr0' ELSE 'socyr' END + CAST(@year AS varchar) + ' as '+ CAST(@sql AS varchar) + ','
PRINT @message
FETCH NEXT FROM SocioCursor INTO @year
SET @sql = @sql + 1
END

结果是一些字符串,例如

socyr08 as 2006,  
socyr09 as 2007,
socyr10 as 2008,
socyr11 as 2009,
socyr12 as 2010,

我应该改变什么才能得到

socyr08 as 2006,  
socyr09 as 2007,
socyr10 as 2008,
socyr11 as 2009,
socyr12 as 2010

最佳答案

我不确定您是否希望它们出现在单行文本中。我认为你可以像下面这样没有光标来做到这一点。

请根据需要调整变量长度正确的函数,如果需要,请删除char(13)单行无换行符。

Sql-Fiddle Demo

declare @sql int = 2006, @message varchar(500)

select @message = isnull(@message + ',' + char(13), '') +
'socyr' + right(100 + year, 2) + ' as ' +
convert(varchar(4), @sql),
@sql = @sql +1
from T

select @message


| COLUMN_0 |
----------------
socyr01 as 2006,
socyr02 as 2007,
socyr09 as 2008,
socyr10 as 2009,
socyr11 as 2010

关于sql - 如何从 SQL Server 中的字符串中删除最后一个符号。如果它是一个循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15785034/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com