قرار دادن چند سطر در یک سطر در SQL Server
قرار دادن چند ردیف از یک ستون در یک ردیف براساس ستون دیگر
1 A
1 B
1 C → 1 A,B,C
2 D 2 D,E
2 E
خروجی زیر را مشاهده کنید:
select * from ClassStudent
| ClassID | ClassName | StudentID | StudentName |
| 1 | کلاس آ | 1 | عرفان |
| 1 | کلاس آ | 2 | مهران |
| 1 | کلاس آ | 3 | رضا |
| 1 | کلاس آ | 4 | هادی |
| 2 | کلاس ب | 5 | نازی |
| 2 | کلاس ب | 6 | الهام |
| 2 | کلاس ب | 7 | سیما |
| 3 | کلاس پ | 1 | عرفان |
| 3 | کلاس پ | 8 | سالار |
| 3 | کلاس پ | 9 | رهام |
با استفاده از دستور زیر:
SELECT
GBV.ClassName,
(SELECT '، ' + XMLV.StudentName
FROM ClassStudent XMLV
WHERE XMLV.ClassID = GBV.ClassID
FOR XML PATH('')) [StudentNames]
FROM ClassStudent GBV
GROUP BY GBV.ClassName, GBV.ClassID
خروجی به این صورت می شود:
| ClassName | StudentNames |
| کلاس آ | ،عرفان، مهران، رضا، هادی |
| کلاس ب | ،نازی، الهام، سیما |
| کلاس پ | ،عرفان، سالار، رهام |
و برای حدف کاما از آخرین رکورد کد را بصورت زیر کامل می کنیم:
SELECT
GBV.ClassName,
STUFF((SELECT '، ' + XMLV.StudentName
FROM ClassStudent XMLV
WHERE XMLV.ClassID = GBV.ClassID
FOR XML PATH('')), 1, 1, '') [StudentNames]
FROM ClassStudent GBV
GROUP BY GBV.ClassName, GBV.ClassID
و خروجی به این صورت می شود:
| ClassName | StudentNames |
| کلاس آ | عرفان، مهران، رضا، هادی |
| کلاس ب | نازی، الهام، سیما |
| کلاس پ | عرفان، سالار، رهام |