Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

SQL - Bagaimana cara mengubah posisi?

MySQL tidak mendukung sintaks ANSI PIVOT/UNPIVOT, sehingga Anda harus menggunakan:

  SELECT t.userid
         MAX(CASE WHEN t.fieldname = 'Username' THEN t.fieldvalue ELSE NULL END) AS Username,
         MAX(CASE WHEN t.fieldname = 'Password' THEN t.fieldvalue ELSE NULL END) AS Password,
         MAX(CASE WHEN t.fieldname = 'Email Address' THEN t.fieldvalue ELSE NULL END) AS Email
    FROM TABLE t
GROUP BY t.userid

Seperti yang Anda lihat, pernyataan CASE perlu didefinisikan per nilai. Untuk membuat ini dinamis, Anda harus menggunakan Sintaks Pernyataan yang Disiapkan MySQL (SQL dinamis) .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Urutan SQL Berdasarkan Hitungan

  2. MySQL 8 Ekspresi Tabel Umum CTE

  3. Cara Mengatasi Akses Ditolak Untuk Pengguna 'root'@'localhost' (menggunakan Kata Sandi:Ya) Saat Menghubungkan Database MySQL

  4. Format tanggal MySQL DD/MM/YYYY pilih kueri?

  5. Perbedaan Antara FIELD() dan FIND_IN_SET() di MySQL