Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Melakukan Transformasi Baris ke Lajur (Pivot) dalam MySQL dengan Data Dinamik?
Transformasi Baris ke Lajur dalam MySQL: Jadual Pangsi untuk Data Dinamik
Jadual pangsi ialah cara mudah untuk mengubah data daripada berorientasikan baris format kepada format berorientasikan lajur, membolehkan analisis dan pelaporan yang lebih mudah. Dalam MySQL, transformasi ini boleh dicapai melalui teknik khusus.
Pertimbangkan contoh data berikut:
ID | Type | Degignation | |
---|---|---|---|
1000000000 | 202 | [email protected] | Entrepreneur |
1000000000 | 234 | [email protected] | Engineering,Development |
1000000000 | 239 | [email protected] | CTO |
Untuk memutar data ini, kami menggunakan pertanyaan berikut:
SELECT ID, MAX(CASE Type WHEN 202 THEN Degignation END) AS `202` MAX(CASE Type WHEN 234 THEN Degignation END) AS `234` MAX(CASE Type WHEN 239 THEN Degignation END) AS `239` Email FROM mytable GROUP BY ID, Email
Pertanyaan ini menggunakan ungkapan CASE untuk mencipta lajur secara dinamik bagi setiap nilai Jenis yang berbeza. Fungsi MAX digunakan untuk mengagregatkan nilai Degignation bagi setiap gabungan ID dan E-mel.
Perlu ambil perhatian bahawa untuk pertanyaan ini berfungsi dengan berkesan, anda mesti mengetahui semua nilai Jenis yang mungkin terlebih dahulu. MySQL tidak membenarkan penambahan lajur yang dinamik berdasarkan data yang ditemui pada masa jalan; takrifan lajur mestilah statik semasa penyediaan pertanyaan.
Teknik ini membolehkan anda mengubah data berorientasikan baris kepada format berorientasikan lajur, memudahkan analisis dan tugasan pelaporan dengan menyediakan persembahan data yang lebih intuitif.
Atas ialah kandungan terperinci Bagaimana untuk Melakukan Transformasi Baris ke Lajur (Pivot) dalam MySQL dengan Data Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!