Menggabungkan Teks Di MySQL (Concat).


Untuk menggabungkan teks dari beberapa field yang ada di tabel MySQL dibutuhkan sebuah fungsi CONCAT, dengan fungsi concat ini pembaca dapat menggabungkan nilai yang ada pada field-field yang ada di dalam tabel didalam database MySQL.


Biar gak bingung lebih baik kita langsung coba saja praktek bagaimana cara penggunaan dari fungsi concat ini ya.

Buat sebuah tabel baru di mysql dengan nama biodata, lalu tambahkan field ID, NAMA DEPAN, NAMA BELAKANG.  Jika pembaca belum tau bagaimana cara membuat tabel di MySQL, silahkan lihat tutorial yang sebelumnya sudah saya buat mengenai cara membuat tabel di MySQL.


mysql> create table biodata (ID INT(5) auto_increment, 
NAMA_DEPAN VARCHAR(15), NAMA_BELAKANG VARCHAR(15), PRIMARY KEY (ID));

Query OK, 0 rows affected (0.14 sec)


Jika sudah dibuat, tambahkan beberapa data kedalam tabel biodata tersebut dengan menggunakan perintah Insert.  Untuk lebih jelas mengenai perintah Insert di MySQL, pembaca bisa membaca mengenai perintah Insert di MySQL disini.


mysql> insert into biodata values ('','FIRDAN','ARDIANSYAH'),
('','MUHAMMAD','BILLAL');

Query OK, 2 rows affected, 0 warnings (0.05 sec)


Pada contoh ini saya memasukan dua buah data kedalam tabel tersebut, yaitu biodata dengan nama firdan ardiansyah dan biodata dengan nama Muhammad Billal. Tampilannya di tabel biodata adalah seperti berikut :


mysql> SELECT * FROM biodata;

+----+------------+---------------+

| ID | NAMA_DEPAN | NAMA_BELAKANG |

+----+------------+---------------+

|  1 | FIRDAN     | ARDIANSYAH    |

|  2 | MUHAMMAD   | BILLAL        |

+----+------------+---------------+

2 rows in set (0.00 sec)


Sekarang kita akan coba menampilkan data dengan menggabungkan nilai yang ada di nama_depan dan nama_belakang, disinilah fungsi concat di MySQL kita gunakan untuk menggabungkan nilai tersebut, untuk lebih jelasnya silahkan lihat perintah MySQL berikut ini :


mysql> select concat(NAMA_DEPAN,NAMA_BELAKANG) as NAMA_LENGKAP 
from biodata;

+------------------+

| NAMA_LENGKAP     |

+------------------+

| FIRDANARDIANSYAH |

| MUHAMMADBILLAL   |

+------------------+

2 rows in set (0.00 sec)


Oke sekarang field NAMA_DEPAN dan field NAMA_BELAKANG  sudah berhasil digabungkan, namun tampilannya benar benar menjadi satu dan tidak ada pemisah seperti spasi atau titik misalnya. Untuk mengakali hal tersebut, tambahkan spasi pada perintah concat seperti berikut :


mysql> select concat(NAMA_DEPAN,' ',NAMA_BELAKANG) as NAMA_LENGKAP 
from biodata;



+-------------------+

| NAMA_LENGKAP      |

+-------------------+

| FIRDAN ARDIANSYAH |

| MUHAMMAD BILLAL   |

+-------------------+

2 rows in set (0.00 sec)


Fungsi Concat_Ws

Sebenarnya ada cara lebih mudah untuk mengatur tampilan concat agar menjadi lebih mudah dibaca, jika pada contoh diatas kita harus menambahkan spasi satu satu di perintah concat, kalau data yang ingin ditampilkan sedikit sih tidak masalah, tapi bagaimana jika data yang ingin ditampilkan dan digabung teksnya banyak? namun dengan menggunakan perintah Concat_Ws hal tersebut dapat dihindari.

Untuk lebih jelasnya silahkan pembaca perhatikan perintah Concat_ws di MySQL berikut ini :


mysql> select concat_ws(' ',ID, NAMA_DEPAN,NAMA_BELAKANG) as DATA_SISWA 
from biodata;

+---------------------+

| DATA_SISWA          |

+---------------------+

| 1 FIRDAN ARDIANSYAH |

| 2 MUHAMMAD BILLAL   |

+---------------------+

2 rows in set (0.00 sec)


Yup dengan menggunakan perintah concat_ws kita tidak perlu menambahkan satu-satu spasi pada setiap fieldnya, cukup satu spasi saja sebelum nama field yang akan digabung dimasukan .

Seperti itulah bagaimana cara menggabungkan teks yang ada di field MySQL. Semoga tutorial mengenai Concat dan juga Concat_ws ini dapat berguna bagi pembaca sekalian.

1 comments:

Post a Comment