Perintah/Script Sql GROUP_CONCAT() di MySQL Server
https://carakuvb6.blogspot.com/2017/12/perintahscript-sql-groupconcat-di-mysql.html
Pada postingan artikel berikut ini admin akan sedikit share tentang cara menggunakan fungsi script GROUP_CONCAT pada MySQL Database. Untuk fungsi CONCAT() itu sendiri secara dasar telah admin bahas pada artikel sebelumnya yaitu Menggabungkan 2 Field Menggunakan Fungsi CONCAT() MySQL Server tetapi untuk jenis yang satu ini sama-sama menggunakan penggabungan 2 file menjadi 1 row tetapi dengan metode pengelompokkan data. Langsung saja buka MySQL Database CommandLine
Tabel yang admin gunakan kali ini tabel stok
mysql> select * from stok limit 20;
+---------------+------------+--------+--------+---------+
| IDBARANG | NMBARANG | JUMBRG | KATEG | SATUAN |
+---------------+------------+--------+--------+---------+
| 1111234555 | U MILD 16 | 5 | ROKOK | PCS |
| 8998989300087 | GG MILD | 17 | ROKOK | PCS |
| 8995078803078 | U MILD 16 | 21 | ROKOK | BUNGKUS |
| 8999909982000 | A MILD 12 | 67 | ROKOK | BUNGKUS |
| 8999909000346 | U BOLD | 30 | ROKOK | BUNGKUS |
| 8999909028234 | SAMSOE 12 | 8 | ROKOK | BUNGKUS |
| 8998989110129 | SURYA 12 | 44 | ROKOK | BUNGKUS |
| 8993996341238 | JAZZY 12 | 10 | ROKOK | BUNGKUS |
| 6901028110785 | MODEN 20 | 18 | ROKOK | BUNGKUS |
| 3 | SOLAR | 11 | MINYAK | LITER |
| 8991906101057 | LA LIGHT | 20 | ROKOK | BUNGKUS |
| 9312412510628 | UNION 20 | 12 | ROKOK | BUNGKUS |
| 8991906105758 | LA BOLD 20 | 25 | ROKOK | BUNGKUS |
| 8991917101510 | INTRO 12 | 10 | ROKOK | BUNGKUS |
| 8997018920067 | RED BLACK | 105 | ROKOK | BUNGKUS |
| 8992736116105 | SAOS SASA | 49 | SAOS | BTL |
| 089686598025 | CHITATO | 96 | SNACK | BUNGKUS |
| 8886001038011 | BENG2 | 351 | SNACK | PCS |
| 8994755010495 | TIMTAM RV | 168 | SNACK | PCS |
| NK | NADZ KORO | 24 | SNACK | BUNGKUS |
+---------------+------------+--------+--------+---------+
20 rows in set (0.00 sec)
Langsung masuk pada secript pembahasan sebagai contoh admin akan mengelompokan data Nama Barang berdasar group / kelompok kategorimysql> select * from stok limit 20;
+---------------+------------+--------+--------+---------+
| IDBARANG | NMBARANG | JUMBRG | KATEG | SATUAN |
+---------------+------------+--------+--------+---------+
| 1111234555 | U MILD 16 | 5 | ROKOK | PCS |
| 8998989300087 | GG MILD | 17 | ROKOK | PCS |
| 8995078803078 | U MILD 16 | 21 | ROKOK | BUNGKUS |
| 8999909982000 | A MILD 12 | 67 | ROKOK | BUNGKUS |
| 8999909000346 | U BOLD | 30 | ROKOK | BUNGKUS |
| 8999909028234 | SAMSOE 12 | 8 | ROKOK | BUNGKUS |
| 8998989110129 | SURYA 12 | 44 | ROKOK | BUNGKUS |
| 8993996341238 | JAZZY 12 | 10 | ROKOK | BUNGKUS |
| 6901028110785 | MODEN 20 | 18 | ROKOK | BUNGKUS |
| 3 | SOLAR | 11 | MINYAK | LITER |
| 8991906101057 | LA LIGHT | 20 | ROKOK | BUNGKUS |
| 9312412510628 | UNION 20 | 12 | ROKOK | BUNGKUS |
| 8991906105758 | LA BOLD 20 | 25 | ROKOK | BUNGKUS |
| 8991917101510 | INTRO 12 | 10 | ROKOK | BUNGKUS |
| 8997018920067 | RED BLACK | 105 | ROKOK | BUNGKUS |
| 8992736116105 | SAOS SASA | 49 | SAOS | BTL |
| 089686598025 | CHITATO | 96 | SNACK | BUNGKUS |
| 8886001038011 | BENG2 | 351 | SNACK | PCS |
| 8994755010495 | TIMTAM RV | 168 | SNACK | PCS |
| NK | NADZ KORO | 24 | SNACK | BUNGKUS |
+---------------+------------+--------+--------+---------+
20 rows in set (0.00 sec)
mysql> SELECT KATEG,GROUP_CONCAT(NMBARANG separator ' > ') as NAMA_BARANG FROM stok GROUP BY KATEG limit 10;
+--------------+---------------------------------------------------------+
| KATEG | NAMA_BARANG |
+--------------+---------------------------------------------------------+
| ALAT LISTRIK | LILIN AAA > MCB COMSAN > FITING TNS > ALTECO > NATIONAL |
| ALAT TULIS | KUAS LUKIS > LEM HAKOL > CEMITI > BOLPENKU |
| ALAT2 MANDI | SHOWER NET |
| ASESORIS | MASKER BAP |
| BISCUIT | KHONGGGUAN > OREO MINI > OREO ORI > VENEZIA |
| COKLAT | CHOCO PIE > BALIMANGO > BALITOS |
| DETERJEN | MOLTO PURE |
| KOPI | KOPI JUARA > KOPI JUARA |
| KOSMETIK | COTTON > TANCO 20G > SERIT CINA > FANBO 67P |
| LEM | LEM TIKUS > AA-BON > LAKS BAN |
+--------------+---------------------------------------------------------+
10 rows in set (0.00 sec)
Sangat jelas bukan data-data yang berkategori terkelompok didalam satu baris/row dengan separator/pembatas data '>' ini sangat memudahkan kita dalam mengelompokkan data menjadi satu baris/row tanpa harus menggabungkan fungsi yang satu dengan fungsi yang lain. Semoga Bermanfaat
Perhatian !!
- Berkomentarlah dengan menggunakan bahasa yang baik dan sopan dan sesuai topik pembahasan
- Dilarang menjadikan referensi artikel web ini tanpa menyertakan sumbernya