Aggregate
MySQL
GROUP_CONCAT
Menggabungkan nilai-nilai dari beberapa baris menjadi satu string. Mendukung pengurutan, pemisah kustom, dan penghapusan duplikat dengan DISTINCT.
Tipe hasil:
TEXTDiperbarui: 7 Jan 2026Syntax
SQL
GROUP_CONCAT([DISTINCT] expr [ORDER BY col [ASC|DESC]] [SEPARATOR str])Parameter
exprstringwajib
Ekspresi atau kolom yang akan digabungkan
SEPARATORstringopsional
String pemisah antar nilai (default: koma)
Default: ,
Contoh Penggunaan
Menggabungkan Nama Produk
SQL
1 SELECT category, GROUP_CONCAT(product_name) AS products 2 FROM products 3 GROUP BY category;
Menggabungkan semua nama produk per kategori dengan koma.
Hasil
Electronics: iPhone,Samsung,Sony
Dengan Custom Separator
SQL
1 SELECT GROUP_CONCAT(tag SEPARATOR ' | ') AS all_tags 2 FROM article_tags 3 WHERE article_id = 1;
Menggabungkan tag dengan separator pipe.
Hasil
all_tags: tech | programming | mysql
Dengan ORDER BY
SQL
1 SELECT department, 2 GROUP_CONCAT(name ORDER BY hire_date ASC SEPARATOR ', ') AS employees 3 FROM employees 4 GROUP BY department;
Menggabungkan nama karyawan diurutkan berdasarkan tanggal masuk.
Hasil
Sales: John, Alice, Bob
DISTINCT untuk Nilai Unik
SQL
1 SELECT GROUP_CONCAT(DISTINCT city SEPARATOR '; ') AS cities 2 FROM customers;
Menggabungkan kota unik saja tanpa duplikat.
Hasil
cities: Jakarta; Surabaya; Bandung