खोज…


स्ट्रिंग एकत्रीकरण के लिए STUFF का उपयोग करना

हमारे पास SubjectId के साथ एक छात्र तालिका है। यहाँ विषय के आधार पर सहमति की आवश्यकता है।

सभी SQL सर्वर संस्करण

create table #yourstudent (subjectid int, studentname varchar(10))

insert into #yourstudent (subjectid, studentname) values
 ( 1       ,'Mary'    )
,( 1       ,'John'    )
,( 1       ,'Sam'    )
,( 2       ,'Alaina')
,( 2       ,'Edward')

select subjectid,  stuff(( select concat( ',', studentname) from #yourstudent y where y.subjectid = u.subjectid for xml path('')),1,1, '') 
    from #yourstudent u
    group by subjectid

स्ट्रिंग एग्रीगेशन के लिए String_Agg

SQL सर्वर 2017 या vnext के मामले में हम इस एकत्रीकरण के लिए अंतर्निहित STRING_AGG का उपयोग कर सकते हैं। उसी छात्र तालिका के लिए,

create table #yourstudent (subjectid int, studentname varchar(10))

insert into #yourstudent (subjectid, studentname) values
 ( 1       ,'Mary'    )
,( 1       ,'John'    )
,( 1       ,'Sam'    )
,( 2       ,'Alaina')
,( 2       ,'Edward')

select subjectid, string_agg(studentname, ',') from #yourstudent
    group by subjectid


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow