2012-03-12 6 views
-1

그룹 기준을 사용할 때 쉼표로 값을 연결하려고했습니다. 그래서 STUFF() 함수와 for xml path('') 절을 사용합니다. 여기에 SQL Server 2005에서 성공적으로 실행하지만, 그렇다면 그것은 또한 SQL Server 2000에서 실행해야합니다 결과로 내 스크립트를 재구성 말해 SQL 서버 2000에서 실행되지 위의 스크립트 내 스크립트SQL Server 2000의 SQL Server 문자열 연결 문제

IF EXISTS 
( 
SELECT * 
FROM tempdb.dbo.sysobjects 
WHERE ID = OBJECT_ID(N'tempdb..#tmp1') 
) 
BEGIN 
DROP TABLE #tmp1 
END 

create table #tmp1 
(ID varchar(2),CName varchar(20)) 

insert into #tmp1(ID,CName) values ('A','BBA Reman') 
insert into #tmp1(ID,CName) values ('B','BBA Reman') 
insert into #tmp1(ID,CName) values ('C','CT Tech') 
insert into #tmp1(ID,CName) values ('D','CT Tech') 

select 
t1.CName, 
stuff((
    select ',' + t.ID 
    from #tmp1 t 
    where t.CName = t1.CName 
    order by t.ID 
    for xml path('') 
),1,1,'') as ConCatStr 
from #tmp1 t1 
group by t1.CName 

입니다.

+1

는 SQL 2005 년 이후는 ... –

답변