Fungsi CONCAT() Pada MySql
Fungsi CONCAT()
pada MySQL digunakan untuk menggabungkan (concatenate) dua atau lebih nilai string (karakter),
termasuk nilai numerik yang nantinya akan dikonversi menjadi bentuk string. Misalnya, jika Anda memiliki kolom nama_depan
dan nama_belakang dalam sebuah tabel, Anda dapat menggabungkan keduanya menjadi satu kolom baru dengan memanfaatkan
CONCAT()
. Fungsi ini sangat berguna dalam menampilkan data gabungan, pembuatan label dinamis, atau kebutuhan
lain yang memerlukan manipulasi string.
Fungsi dan Keunggulan
- Menggabungkan banyak argumen: Anda dapat menggabungkan lebih dari dua argumen sekaligus.
- Otomatis konversi tipe data: Nilai numerik atau tipe data lain akan dikonversi menjadi string ketika digunakan pada
CONCAT()
. - Mudah disisipkan karakter tambahan: Anda bisa menambahkan spasi, koma, atau tanda baca lain di antara argumen.
Sintaks
Sintaks dasar penggunaan CONCAT()
adalah sebagai berikut:
CONCAT(string1, string2, [string3, ...])
Di mana:
string1, string2, ...
: Argumen string (atau tipe data lain) yang ingin digabungkan.- Fungsi ini dapat menerima dua atau lebih argumen.
Penting untuk diperhatikan bahwa jika salah satu argumen yang dilewatkan ke CONCAT()
bernilai NULL,
hasil keseluruhan juga akan menjadi NULL. Jika Anda ingin mengabaikan NULL
, Anda bisa menggunakan
CONCAT_WS()
(Concatenate With Separator) yang akan mengabaikan argumen NULL
.
Contoh Penggunaan
1. Menggabungkan Kolom nama_depan dan nama_belakang
SELECT
CONCAT(nama_depan, ' ', nama_belakang) AS nama_lengkap
FROM pegawai;
Pada contoh di atas, kita menggabungkan nilai dari kolom nama_depan
dan nama_belakang
dengan menyisipkan spasi di antaranya. Hasilnya ditampilkan sebagai kolom baru bernama nama_lengkap
.
2. Menyertakan Karakter Khusus atau Teks Tambahan
SELECT
CONCAT('Halo, ', nama_depan, ' ', nama_belakang, '!') AS sapaan
FROM pegawai;
Di sini, kita menyisipkan kata “Halo,†di awal dan tanda seru (!
) di akhir.
Output sapaan akan menjadi sesuatu seperti “Halo, Budi Gunawan!â€.
3. Menggabungkan Lebih dari Dua Argumen
SELECT
CONCAT(nama_depan, ' - ', departemen, ' - ', kota) AS info_karyawan
FROM pegawai;
Anda dapat menambahkan lebih banyak argumen sesuai kebutuhan. Dalam contoh ini, kita menambahkan tanda “ - †sebagai pemisah antara berbagai kolom.
4. Menggunakan Nilai Numerik
SELECT
CONCAT(kode_produk, '-', tahun_produksi) AS kode_tahun
FROM produk;
Meskipun kode_produk
dan tahun_produksi
adalah tipe numerik, MySQL akan
mengonversinya ke tipe string secara otomatis saat menggunakan CONCAT()
.
5. Contoh dengan Kondisi NULL
Jika salah satu kolom bernilai NULL
, maka hasil dari CONCAT()
keseluruhan akan NULL
.
Sebagai contoh:
SELECT
CONCAT(nama_depan, ' ', nama_tengah, ' ', nama_belakang) AS nama_lengkap
FROM pegawai;
Jika nama_tengah
bernilai NULL
untuk seorang pegawai, maka nama_lengkap
juga akan
menjadi NULL
. Untuk mengatasi hal ini, Anda dapat menggunakan CONCAT_WS()
:
SELECT
CONCAT_WS(' ', nama_depan, nama_tengah, nama_belakang) AS nama_lengkap
FROM pegawai;
CONCAT_WS()
akan mengabaikan nilai NULL
dan tetap menambahkan spasi di antara argumen yang bernilai tidak NULL
.
Ringkasan
Fungsi CONCAT()
pada MySQL sangat berguna ketika Anda ingin menggabungkan nilai string dan/atau numerik dari satu
atau lebih kolom. Penting diperhatikan bahwa keberadaan NULL
dapat membuat hasil menjadi NULL
,
sehingga Anda perlu mempertimbangkan penggunaan CONCAT_WS()
jika ingin mengabaikan NULL
.
Dengan memanfaatkan CONCAT()
, Anda bisa memperkaya tampilan data serta mempermudah proses
pengolahan informasi di dalam aplikasi Anda.
Baca Juga :