Query Tabel Dengan Fungsi GROUP_CONCAT Mysql
بسم الله الرحمن الرحيم
Alhamdulillah, pada kesempatan ini saya ingin berbagi bagaimana menggunakan fungsi GROUP_CONCAT Mysql. Untuk apa fungsi ini digunakan? berikut penjelasan singkat:Misal ada 2 buah tabel yang saling terhubung, di sini saya contohkan Tabel Barang dan Tabel Penjualan.
Tabel Barang | |
id_barang | int(11) |
nama_barang | varchar(20) |
harga | int(11) |
Tabel Penjualan | |
no_transaksi | varchar(15) |
id_barang | int(11) |
qty | int(11) |
total_bayar | int(11) |
kemudian isi data dari tabel tersebut adalah sebagai berikut:
Tabel Barang
id_barang | nama_barang | harga |
1 | Kue Bingka | 22000 |
2 | Keripik singkong | 1000 |
Tabel Penjualan
no_transaksi | id_barang | qty | total_bayar |
20150509-001 | 1 | 2 | 44000 |
20150509-001 | 2 | 95 | 95000 |
Jika dengan query biasa, kita dapat menampilkan Tabel Penjualan yang nama_barang-nya berdasarkan id_barang pada Tabel Barang.
Tabel Penjualan (query)
no_transaksi | nama_barang | qty | total_bayar |
20150509-001 | Kue Bingka | 2 | 44000 |
20150509-001 | Keripik singkong | 95 | 95000 |
Tabel Penjualan
no_transaksi | nama_barang | qty | total_bayar |
20150509-001 | Kue Bingka,Keripik singkong | 2,95 | 139,000 |
Cara menggunakannya mudah saja, coba jalankan query berikut:
SELECT tb_penjualan.no_transaksi, (
GROUP_CONCAT( tb_barang.nama_barang )
) AS nama_barang, (
GROUP_CONCAT( tb_penjualan.qty )
) AS qty, (
SELECT sum( tb_penjualan.total_bayar )
) AS total_bayar
FROM tb_penjualan, tb_barang
WHERE tb_penjualan.id_barang = tb_barang.id_barang
GROUP BY tb_penjualan.no_transaksi
Sekarang lihat hasilnya, insya Allah persis seperti tabel di atas.
Semoga bermanfaat dan saya mohon kritik dan saran secara sukarela dari pengunjung terhormat.
Terima kasih,
Wassalamu 'alaikum warahmatullahi wabarakatuh
Comments
Post a Comment
Selamat berkunjung di blog saya, terima kasih.