Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Putar menggunakan SQL Server 2000

Saya menyadari ini berumur dua tahun, tetapi itu mengganggu saya bahwa jawaban yang diterima membutuhkan penggunaan SQL dinamis dan jawaban yang paling banyak dipilih tidak akan berfungsi:

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

Anda harus gunakan Group By atau Anda akan mendapatkan hasil yang terhuyung-huyung. Jika Anda menggunakan Kelompokkan Menurut, Anda harus membungkus setiap kolom yang tidak ada dalam klausa Kelompokkan Menurut dalam fungsi agregat (atau subkueri).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Memahami Fungsi GROUPING dan GROUPING_ID di SQL Server

  2. Kapan Anda akan menggunakan fungsi bernilai tabel?

  3. Gunakan NEWID() untuk Membuat Nilai Unik di SQL Server

  4. Cara Menghapus Pekerjaan Agen SQL Server di Azure Data Studio

  5. Menyimpan dan Menganalisis Dokumen di Sistem File Windows dengan Pencarian Semantik SQL Server – Bagian 2