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

Dua tabel, dengan hubungan satu ke banyak. Bagaimana cara menggabungkan nilai tanpa baris duplikat?

Sayangnya Anda tidak dapat melakukan ini murni di MySQL. Dalam kumpulan hasil, Anda tidak dapat memiliki baris dengan (jumlah) kolom yang berbeda. Anda memerlukan beberapa logika aplikasi yang diimplementasikan. Yang paling dekat dengan ini adalah:

select m.id, GROUP_CONCAT(voto SEPARATOR ',') 
from messages m 
left join votations v on v.messageID = m.id
group by m.id;

Ini akan mengembalikan format ini:

ID  GROUP_CONCAT(VOTO SEPARATOR ',')
1   2,5,6
2   2,12,3

Anda dapat melihat ini berfungsi di sini:http://sqlfiddle.com/#!2/241a8/ 3




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengkategorikan data mysql ke dalam tabel html terpisah?

  2. Bagaimana cara mengimpor data XBRL ke MySQL?

  3. mysql PDO dan prosedur tersimpan injeksi SQL dinamis

  4. Diperlukan kueri tunggal untuk mengambil data dari tabel

  5. Ambil data ke menu tarik-turun ajax menggunakan PHP MySql JQuery