SQL Server : Menggabungkan Beberapa String dalam Query

Setidaknya ada 2 cara untuk menggabungkan 2 nilai string atau lebih yaitu dengan menggunakan tanda tambah (+) atau fungsi CONCAT.

1. Menggabungkan teks string dengan tanda tambah (+)

SELECT 'Rani' + 'Irsan'


2. Menggabungkan teks string dengan fungsi concat

SELECT CONCAT('Rani', 'Irsan')


Kedua  cara di atas hasilnya akan sama, lalu apa yang membedakannya?



Hasilnya akan berbeda jika kita menggunakan nilai bertipe berbeda pada penggabungan menggunakan tanda tambah. Hasilnya akan error karena tipe data berbeda.




Sementara jika menggunakan fungsi concat hasilnya sebagai berikut:



Sebenarnya bukan tidak mungkin untuk menggabungkan 2 tipe data berbeda dengan tetap menggunakan tanda tambah (+), tetapi kita perlu mengubah tipe datanya terlebih dahulu baik dengan CAST ataupun CONVERT. Contohnya sebagai berikut:

SELECT 'Rani' + CAST(1 AS VARCHAR(1))

SELECT 'Tanggal Hari ini ' + CAST(GETDATE() AS VARCHAR(20))



Sebagai tambahan CAST / CONVERT juga diperlukan jika ingin menggabungkan angka dan/atau tanggal dengan tanda tambah (+), karena jika tidak maka hasilnya akan berupa penjumlahan.

Mari kita lihat cara yang digunakan dan perbedaan hasilnya berikut ini:






Post a Comment

0 Comments