0

我正在研究一个存储过程,在我的工作中使用一个函数来扩展它。目前我在一行中显示同一列的多个值时遇到问题,它们必须有所不同并像这样25,26,27

所以这就是我一直在尝试的。

DECLARE @myVariable varhcar(200) null)
SELECT @myVariable = COALESCE(@myVariable + '','','') + stringvalue
from TABLE
WHERE COLUMN1 = SOMEVARIABLE
and ISSUE = COLUMN2

SELECT @Headtext = 'name' + convert(varchar, @myVariable)

在此之前,我在 SP 中创建了一个表格,其中显示了其他数据。我希望 SP 也用这些数据创建行。还是遇到了一些麻烦,不确定是否有这个,第一次接触这种SP。

4

1 回答 1

2

您的代码应如下所示:

DECLARE @myVariable varhcar(200);
SELECT @myVariable = COALESCE(@myVariable + ',', '') + stringvalue
from TABLE
WHERE COLUMN1 = SOMEVARIABLE and ISSUE = COLUMN2;

SELECT @Headtext = 'name' + @myVariable;

连接变量的另一种方法是:

SELECT @myVariable = stuff((select ',' + stringvalue
                            from TABLE
                            WHERE COLUMN1 = SOMEVARIABLE and ISSUE = COLUMN2
                            for xml path ('')
                           ), 1, 1, '');

SELECT @Headtext = 'name' + @myVariable;
于 2013-08-26T12:11:47.723 回答