Sebagian besar RDBMS utama menyediakan beberapa opsi untuk menggabungkan dua atau lebih string.
- Ada
CONCAT()
fungsi, yang menggabungkan argumennya. - Ada juga
CONCAT_WS()
yang memungkinkan Anda menentukan pemisah yang memisahkan string yang digabungkan. - Dan ada juga operator penggabungan string, yang memungkinkan kita untuk menggabungkan operan-operannya.
Berikut adalah contoh masing-masing metode.
CONCAT()
Fungsi
Sebagian besar RDBMS utama menyediakan CONCAT()
fungsi untuk menggabungkan argumen string. Umumnya, argumen non-string dikonversi ke string sebelum penggabungan terjadi.
Contoh:
SELECT CONCAT('Bangkok', 'Breaking');
Hasil:
BangkokBreaking
Dengan fungsi ini, jika kita ingin menyertakan spasi di antara string, kita perlu menambahkan spasi ke salah satu string, atau menyertakan spasi sebagai argumen terpisah:
SELECT
CONCAT('Bangkok ', 'Breaking') AS "Option 1",
CONCAT('Bangkok', ' ', 'Breaking') AS "Option 2";
Hasil:
+------------------+------------------+ | Option 1 | Option 2 | +------------------+------------------+ | Bangkok Breaking | Bangkok Breaking | +------------------+------------------+
RDBMS yang memiliki CONCAT()
fungsi termasuk MySQL, MariaDB, SQL Server, Oracle, dan PostgreSQL.
SQLite tidak menyertakan CONCAT()
fungsi, tetapi tidak memiliki operator rangkaian string (lihat di bawah).
CONCAT_WS()
Fungsi
Cara lain untuk memasukkan spasi di antara string adalah dengan menggunakan CONCAT_WS()
fungsi. Fungsi ini memungkinkan Anda untuk menentukan pemisah yang akan digunakan untuk memisahkan semua string yang digabungkan.
Contoh:
SELECT CONCAT_WS(' ', 'Bangkok', 'Breaking');
Hasil:
Bangkok Breaking
Fungsi ini bisa sangat berguna jika Anda memiliki banyak string untuk digabungkan:
SELECT CONCAT_WS(', ', 'Red', 'Green', 'Orange', 'Blue');
Hasil:
Red, Green, Orange, Blue
Dalam kasus seperti itu, Anda hanya perlu menentukan pemisah satu kali.
RDBMS yang memiliki CONCAT_WS()
fungsi termasuk MySQL, MariaDB, SQL Server, dan PostgreSQL.
SQLite dan Oracle tidak memiliki CONCAT_WS()
berfungsi, tetapi mereka melakukannya memiliki operator rangkaian string (lihat di bawah).
Operator Penggabungan String
Sebagian besar RDBMS menyertakan operator rangkaian string yang menggabungkan operan-operannya.
Jika Anda menggunakan SQLite, ini adalah satu-satunya pilihan Anda.
Contoh:
SELECT 'Spy' || 'craft';
Hasil:
Spycraft
Perhatikan bahwa di MySQL, Anda harus mengaktifkan operator penyambungan pipa terlebih dahulu.
Hal yang sama berlaku untuk MariaDB.
SQL Server
Contoh di atas tidak akan berfungsi di SQL Server. Di SQL Server, gunakan tanda plus (+
) operator rangkaian string:
SELECT 'Spy' + 'craft';
Hasil:
Spycraft