2013-08-26 93 views
0

我正在研究一个存储过程,以便在我的工作中使用一个函数对其进行扩展。目前我有一个问题,在同一列显示多个值在一行,他们必须有所不同,并提出这样的25,26,27在SQL中显示一行中同一列的多个值

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

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的第一次计时器。

回答

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; 
相关问题