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

Bagaimana cara menggabungkan beberapa baris di MySQL?

Anda harus dapat menerapkan fungsi agregat ke semua kolom dan kemudian GROUP BY id :

select id,
  max(name) name,
  max(age) age,
  max(grade) grade
from yourtable
group by id

Lihat SQL Fiddle dengan Demo

Sejauh struktur DB, satu-satunya masalah yang saya lihat adalah Anda memasukkan banyak catatan untuk pengguna yang sama. Anda harus menggunakan UPDATE pernyataan untuk menggunakan nilai alih-alih menyisipkan.

Sepertinya Anda ingin menggunakan REPLACE fungsi di MySQL (ini tutorialnya ).

Jadi kuerinya akan mirip dengan ini:

REPLACE 
  INTO yourtable (`id`, `name`, `age`, `grade`) 
  VALUES (0, 'john', 11, null);

Lihat SQL Fiddle dengan Demo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLSTATE[23000]:Pelanggaran batasan integritas dengan batasan yang valid

  2. Bagaimana cara mengetahui dari tabel mana hasil berasal saat menggunakan UNION di MySQL

  3. Daftar Istilah Database DevOps untuk Pemula MySQL

  4. Apa arti dari karakter kutipan aksen kuburan (AKA backtick) di MySQL?

  5. Bagaimana cara mendapatkan banyak catatan terhadap satu catatan berdasarkan relasi?