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

MYSQL:Gabungkan daftar nilai ke dalam tabel

Di MySQL, Anda dapat membuat tabel menggunakan union all :

select m.mode, SUM(p.amount)
from (select 'Cash' as mode union all
      select 'Card' union all
      select 'Cheque' union all
      select 'Bank'
     ) m left join
     payments p
     on m.mode = p.mode
group by m.mode;

Catatan:

  • Saya mengubah name ke mode jadi kolom dengan informasi yang sama memiliki nama yang sama.
  • group by kunci harus dari pertama nama, bukan kedua (yaitu m.mode bukannya p.mode ).
  • Jika Anda ingin 0 bukannya NULL , lalu gunakan coalesce(sum(p.amount), 0) .
  • Anda mungkin ingin mempertimbangkan tabel referensi yang berisi nilai mode.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hasil database sebagai objek atau array?

  2. Kesalahan mengimpor SQL dump ke MySQL:Basis data tidak dikenal / Tidak dapat membuat basis data

  3. Model hierarki mana yang harus saya gunakan? Adjacency, Nested, atau Enumerated?

  4. kategori php, sub kategori pohon

  5. SQL menghitung nilai tertentu pada beberapa kolom dan baris