Rumah >pangkalan data >tutorial mysql >Bagaimanakah Operator PIVOT SQL Server Boleh Mengubah Baris ke Lajur?
Memindahkan Baris ke Lajur dengan Pangsi Pelayan SQL?
Dalam Pelayan SQL, pengendali PIVOT ialah alat yang berkuasa untuk menyusun semula data jadual daripada baris kepada lajur. Ia amat berguna apabila anda perlu meringkaskan data merentas berbilang baris untuk set lajur tertentu.
Untuk menggambarkan, pertimbangkan jadual berikut:
| Name1 | Name2 | Value | |---|---|---| | A | P1 | 1 | | A | P2 | 1 | | A | P3 | 2 | | B | P1 | 3 | | B | P2 | 1 | | B | P4 | 1 |
Andaikan kami ingin mengubahnya data ke dalam format berikut:
| | A | B | |---|---|---| | P1 | 1 | 4 | | P2 | 1 | 1 | | P3 | 2 | NULL | | P4 | NULL | 1 |
Untuk mencapai transformasi ini, kami boleh menggunakan operator PIVOT sebagai berikut:
DECLARE @cols VARCHAR(1000) DECLARE @sqlquery VARCHAR(2000) SELECT @cols = STUFF(( SELECT distinct ',' + QuoteName([Name1]) FROM myTable FOR XML PATH('') ), 1, 1, '') SET @sqlquery = 'SELECT * FROM (SELECT Name2, Name1, Value FROM myTable ) base PIVOT (Sum(Value) FOR [Name1] IN (' + @cols + ')) AS finalpivot' EXECUTE ( @sqlquery )
Dengan memasang pertanyaan secara dinamik, kaedah ini membolehkan kami memutar data dengan set lajur yang berbeza, menyediakan penyelesaian yang fleksibel dan berskala.
Atas ialah kandungan terperinci Bagaimanakah Operator PIVOT SQL Server Boleh Mengubah Baris ke Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!