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

Mysql MySQL atau PHP Ubah baris menjadi dua kolom secara dinamis

Ini bekerja dengan cara yang sama seperti FS_amount , cukup tambahkan kolom baru ke kode Anda yang menghasilkan kolom dinamis:

  SELECT GROUP_CONCAT(DISTINCT CONCAT(
      'MAX(IF(month = ''',
      month,
      ''' and year(date) = ',
      year(date),
      ', FS_amount, NULL)) AS `',
      CONCAT('FA_',month),
      '_',
      year(date),
      '`, ', 
      'MAX(IF(month = ''',
      month,
      ''' and year(date) = ',
      year(date),
      ', AS_amount, NULL)) AS `',
      CONCAT('AS_',month),
      '_',
      year(date),
      '`'      
      )
    order by date
  ) INTO @sql
  FROM tmp_results;

Anda harus melihat kode yang dibuat oleh pernyataan (misalnya dengan menambahkan select @sql; sementara ), meskipun seharusnya cukup mudah untuk menambahkan lebih banyak kolom jika Anda membutuhkannya.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL Pilih semua kolom dari satu tabel dan beberapa dari tabel lain

  2. Bagaimana cara mendapatkan maksimal dua nilai di MySQL?

  3. '𠂉' Bukan karakter unicode yang valid, tetapi dalam rangkaian karakter unicode?

  4. menambahkan paket RMySQL ke R gagal (di Windows)?

  5. Pengecualian Pipa Rusak pada Aplikasi Grails