Walau kelihatannya sepele, penggabungan teks atau string di MySQL sering menimbulkan kebingungan. Hal ini disebabkan karena MySQL harus menggunakan function sedangkan pada beberapa produk database lain cukup menggunakan operator plus (+) atau ampersand (&).
Fungsi-fungsi yang digunakan untuk menggabungkan teks di MySQL adalah concat dan concat_ws. Berikut adalah penjelasan kedua function tersebut dan contoh penggunaannya.
CONCAT : adalah fungsi yang digunakan untuk menggabungkan satu atau lebih teks yang diberikan.
CONCAT(teks1, teks2, ...)
Contoh penggunaan :
Menggabungkan kata “Kampung“, spasi dan “Rambutan“.
SELECT CONCAT("Kampung", " ", "Rambutan");
CONCAT_WS : adalah fungsi yang digunakan untuk menggabungkan satu atau lebih teks dengan tambahan pemisah (separator) antar teks yang digabungkan.
Contoh :
CONCAT_WS(pemisah, teks1, teks2, ...)
Contoh penggunaan :
Menggabungkan kata “Kampung” dan “Rambutan” dengan pemisah “–“.
SELECT CONCAT_WS("-", "Kampung", "Rambutan")
Menggabungkan field “kode_produk” dan “nama_produk” dengan pemisah “, “.
SELECT CONCAT_WS(", ", kode_produk, nama_produk) FROM ms_produk
Jika kedua kolom dapat berisi NULL, tetapi Anda masih ingin menggabungkannya menjadi satu string, solusi termudah adalah menggunakan CONCAT_WS() :
SELECT FirstName AS First_Name , LastName AS Last_Name , CONCAT_WS('', ContactPhoneAreaCode1, ContactPhoneNumber1) AS Contact_Phone FROM TABLE1
Dengan cara ini Anda tidak perlu memeriksa NULL dari setiap kolom secara terpisah.
Atau, jika kedua kolom benar-benar didefinisikan sebagai NOT NULL, CONCAT() sudah cukup :
SELECT FirstName AS First_Name , LastName AS Last_Name , CONCAT(ContactPhoneAreaCode1, ContactPhoneNumber1) AS Contact_Phone FROM TABLE1