我将从sql表示例开始
ID Column
1 Name1
1 Name2
2 Name3
2 Name4
我只想使用ID相同的东西。 我要输出的示例
Name1,Name2 ->FirstRow
Name3,Name4 ->SecondRow
这是我想要做的,但是我将所有最高值都放入一行
Select REPLACE(STUFF((SELECT top(10) CHAR(10) + convert(varchar(50),TrnDocumentID) + ' '+name
FROM InventoryTrans where TrnDocumentID=TrnDocumentID
FOR XML PATH ('')) , 1, 1, '') ,
CHAR(10) , CHAR(13)+CHAR(10))
我也不想将trnDocumentID放在不同的列但在同一行
答案 0 :(得分:0)
尝试以下操作:
declare @tab table (ID int, [Column] varchar(100))
insert into @tab select 1, 'Name1'
union
select 1, 'Name2'
union
select 2, 'Name3'
union
select 2, 'Name4'
select * from @tab
Select ID, REPLACE(STUFF((SELECT top(10) CHAR(10) + convert(varchar(50),ID) + ' '+[Column]
FROM @tab t_in where t_in.ID=t_out.ID
FOR XML PATH ('')) , 1, 1, ''),
CHAR(10) , CHAR(13)+CHAR(10)) Grouped_Value
from @tab t_out
group by ID
您始终可以修改Grouped_Value以删除ID部分。