Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एक उपश्रेणी में एकाधिक परिणामों को एक अल्पविराम से अलग किए गए मान में संयोजित करें

इससे भी उद्देश्य पूरा होगा

नमूना डेटा

declare @t table(id int, name varchar(20),somecolumn varchar(MAX))
insert into @t
    select 1,'ABC','X' union all
    select 1,'ABC','Y' union all
    select 1,'ABC','Z' union all
    select 2,'MNO','R' union all
    select 2,'MNO','S'

प्रश्न:

SELECT ID,Name,
    STUFF((SELECT ',' + CAST(T2.SomeColumn AS VARCHAR(MAX))
     FROM @T T2 WHERE T1.id = T2.id AND T1.name = T2.name
     FOR XML PATH('')),1,1,'') SOMECOLUMN
FROM @T T1
GROUP BY id,Name

आउटपुट:

ID  Name    SomeColumn
1   ABC     X,Y,Z
2   MNO     R,S


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर डेटाबेस (T-SQL) में फ़ाइल समूह कैसे जोड़ें

  2. डेटाबेस में पासवर्ड को सुरक्षित तरीके से कैसे स्टोर करें?

  3. असंगत कॉलम गणना आयात के लिए एसएसआईएस कार्य?

  4. SQL सर्वर में स्विच-इन एक विभाजन (T-SQL)

  5. SQL सर्वर में अलर्ट और ऑपरेटरों का उपयोग करना