Cara Mengubah Data dalam SQL Server 2000
Menghadapi cabaran mengubah data anda kepada format yang lebih berstruktur pangsi menggunakan SQL Server 2000 ? Mari kita mendalami penyelesaian yang mengelakkan perangkap SQL dinamik dan pendekatan yang tidak berkesan, memastikan ketepatan dan kecekapan dalam manipulasi data anda.
Memahami Masalah
Bayangkan anda mempunyai dua jadual: Produk yang mengandungi maklumat produk dan Meta Produk menyediakan metadata tambahan untuk setiap produk. Matlamat anda adalah untuk mencipta set hasil yang memaksi data untuk membentangkannya dalam format jadual, memaparkan nama produk bersama-sama dengan nilai metadata yang sepadan.
Penyelesaian
Untuk mencapai transformasi ini, kami akan menggunakan ungkapan CASE bersama-sama dengan fungsi agregat dalam GROUP BY klausa:
SELECT P.ProductId, P.Name , MIN(CASE WHEN PM.MetaKey = 'A' THEN PM.MetaValue END) AS A , MIN(CASE WHEN PM.MetaKey = 'B' THEN PM.MetaValue END) AS B , MIN(CASE WHEN PM.MetaKey = 'C' THEN PM.MetaValue END) AS C FROM Products AS P JOIN ProductMeta AS PM ON PM.ProductId = P.ProductId GROUP BY P.ProductId, P.Name
Penjelasan
Dengan menggunakan pendekatan ini, anda boleh memutar data anda dengan berkesan dalam SQL Server 2000, mengelakkan pengehadan SQL dinamik dan menghasilkan set hasil yang bersih dan boleh digunakan yang memenuhi keperluan transformasi anda.
Atas ialah kandungan terperinci Bagaimana untuk Mengubah Data dalam SQL Server 2000 Tanpa SQL Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!