Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menggunakan Fungsi PIVOT SQL Server untuk Mengubah Baris menjadi Lajur?
Fungsi PIVOT SQL Server menawarkan cara yang berkuasa untuk menyusun semula data, mengubah baris menjadi lajur untuk analisis dan pelaporan yang lebih baik. Ini amat membantu apabila anda perlu membentangkan data dalam format jadual yang lebih mesra pengguna.
Bayangkan jadual sementara yang mengandungi angka jualan, dengan lajur untuk nombor kedai, nombor minggu dan jumlah jualan. Untuk memaparkan data ini dengan kedai yang disenaraikan secara menegak dan minggu secara mendatar, ikut langkah berikut:
1. Kenal pasti Nombor Minggu Secara Dinamik
Oleh kerana nombor minggu adalah berubah-ubah, pertama sekali kita perlu menentukan nombor minggu unik yang terdapat dalam set data. Ini boleh dicapai menggunakan:
<code class="language-sql">SELECT DISTINCT Week FROM yt;</code>
2. Pembinaan Pertanyaan SQL Dinamik
Seterusnya, kami membina pertanyaan SQL dinamik. Ini melibatkan mencipta rentetan yang mengandungi nama lajur untuk operasi PIVOT. Kod berikut menjana rentetan ini:
<code class="language-sql">DECLARE @cols AS NVARCHAR(MAX), @query AS NVARCHAR(MAX); SELECT @cols = STUFF((SELECT ',' + QUOTENAME(Week) FROM yt GROUP BY Week ORDER BY Week FOR XML PATH(''), TYPE ).value('.', 'NVARCHAR(MAX)') ,1,1,'');</code>
3. Membina Pertanyaan PIVOT
Kini, kami membina pertanyaan PIVOT itu sendiri, menggabungkan rentetan lajur yang dijana secara dinamik:
<code class="language-sql">SET @query = 'SELECT store,' + @cols + ' FROM ( SELECT store, week, xCount FROM yt ) x PIVOT ( SUM(xCount) FOR week IN (' + @cols + ') ) p;';</code>
4. Melaksanakan Pertanyaan PIVOT
Akhir sekali, laksanakan pertanyaan PIVOT dinamik menggunakan:
<code class="language-sql">EXECUTE(@query);</code>
Keputusan:
Output akan menjadi jadual yang menunjukkan nombor kedai dalam lajur pertama dan nombor minggu sebagai pengepala lajur. Jumlah jualan yang sepadan akan mengisi sel jadual, meringkaskan data asal dengan berkesan.
Dengan menggunakan fungsi PIVOT SQL Server, anda boleh menukar data berorientasikan baris dengan cekap kepada format lajur yang lebih mudah ditafsir dan dianalisis, memudahkan tugas pelaporan dan analisis data.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Fungsi PIVOT SQL Server untuk Mengubah Baris menjadi Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!