Sakura
Thú CƯng :
Số bài viết : 1124 Điểm : 1688 Được cảm ơn : 35 Ngày sinh : 03/11/1990 Tham gia ngày : 16/03/2010 Tuổi : 33 Đến từ : Bình Dương Ngề nghiệp : IT Student
| Tiêu đề: Gộp nhiều dòng từ kết quả query thành 1 dòng 22/3/2011, 22:37 | |
| Rảnh lên mạng tìm vài tut về SQL Server cho anh em tham khảo. Đôi khi bạn muốn gộp nhiều row thu được thành 1 query thì có 1 số cách khá hay trong Sql.Chẳng hạn,tôi có 1 table (tên : Baggage) đơn giản như sau : - Code:
-
PassengerID OSTag 2145 BMV123456 2145 BMV234567 2145 BMV123789 2145 BMV124654 2145 BMV456234 2145 BMV908567 5437 DAD676776 5437 DAD989898 5437 DAD787656 5452 DAD123456 Bạn muốn thu được kết quả như sau : - Code:
-
PassengerID OSTag 2145 BMV123456,BMV234567,BMV123789,BMV124654,BMV456234, BMV908567, 5437 DAD676776,DAD989898,DAD787656, 5452 DAD123456, nghĩa là gộp những OSTag của cùng 1 PassengerID vào 1 row và cách nhau bởi dấu " , ". Các bạn có thể viết query như sau : - Code:
-
SELECT DISTINCT bag2.PassengerID, ( SELECT bag1.OSTag +',' AS [text()] FROM REZP8OD01.dbo.Baggage bag1 WHERE bag1.PassengerID=bag2.PassengerID ORDER BY bag1.PassengerID FOR XML PATH(''))[OSTag] FROM dbo.Baggage bag2 Chúc thành công! |
|