Di SQL Server, Anda dapat menggabungkan dua atau lebih string dengan menggunakan T-SQL CONCAT()
fungsi. Anda juga dapat menggunakan operator rangkaian string SQL Server (+
) untuk melakukan hal yang sama. Keduanya dijelaskan di sini.
Di SQL Server (dan di lingkungan pemrograman komputer mana pun), penggabungan string adalah operasi penggabungan string karakter dari ujung ke ujung.
Ini contohnya:
SELECT CONCAT('Peter', ' ', 'Griffin') AS 'Full Name';
Hasil:
Full Name ------------- Peter Griffin
Perhatikan bahwa saya sebenarnya menggabungkan 3 string di sini. Saya menggabungkan nama depan, nama belakang, plus spasi.
Jika saya tidak menambahkan spasi, akan terlihat seperti ini:
SELECT CONCAT('Peter', 'Griffin') AS 'Full Name';
Hasil:
Full Name ------------ PeterGriffin
Yang mungkin atau mungkin bukan hasil yang Anda cari.
Jadi jika kita menerapkan ini ke database, maka kuerinya mungkin terlihat seperti ini:
SELECT CONCAT(FirstName, ' ', LastName) AS 'Full Name' FROM Individuals WHERE IndividualId = '1';
Hasil:
Full Name ------------- Peter Griffin
Jika Anda menggabungkan lebih dari dua string, dan Anda memerlukan spasi (atau pemisah lainnya), pertimbangkan untuk menggunakan CONCAT_WS()
fungsi. Ini memungkinkan Anda untuk menentukan pemisah yang akan digunakan di antara setiap string. Anda hanya perlu menentukan pemisah satu kali, dan ini digunakan pada setiap string yang digabungkan, sehingga Anda tidak perlu mengetik ulang di antara setiap string.
Argumen NULL
Jika Anda terbiasa dengan MySQL, Anda mungkin tahu bahwa MySQL juga memiliki CONCAT()
fungsi. Namun, satu perbedaan antara CONCAT()
SQL Server fungsi dan MySQL CONCAT()
fungsinya adalah bagaimana mereka menangani NULL
argumen.
Di MySQL, CONCAT()
fungsi mengembalikan NULL
jika ada argumen NULL
. Namun, di SQL Server, Anda dapat menambahkan NULL
argumen tanpa itu menghasilkan NULL
hasil.
MySQL
Inilah yang dilakukan MySQL:
SELECT CONCAT('Homer', NULL, 'Simpson') AS 'Full Name';
Hasil:
+-----------+ | Full Name | +-----------+ | NULL | +-----------+
SQL Server
Inilah yang dilakukan SQL Server:
SELECT CONCAT('Peter', NULL, 'Griffin') AS 'Full Name';
Hasil:
Full Name ------------ PeterGriffin
Cara Lain untuk Menggabungkan – Operator Penggabungan String (+
)
SQL Server menyediakan cara lain untuk menggabungkan string. Anda dapat menggunakan +
operator penggabungan string.
SELECT 'Peter' + ' ' + 'Griffin' AS 'Full Name';
Hasil:
Full Name ------------- Peter Griffin