Menghapus whitespace dari string adalah tugas umum saat membersihkan dan menyiapkan data. Setiap database mengimplementasikan fungsi manipulasi string secara berbeda, tetapi semuanya bertujuan membuat data Anda lebih bersih dan konsisten. Dalam panduan ini, kita akan membahas cara menghapus whitespace dengan SQL di berbagai database, termasuk MySQL, PostgreSQL, SQL Server, dan SQLite.
Mengapa Perlu Menghapus Whitespace?
Whitespace terkadang tanpa sengaja ikut masuk ke dalam data, sehingga menimbulkan masalah konsistensi dan akurasi data pada query dan laporan. Menghapusnya membantu memastikan perbandingan dan join berjalan sesuai harapan.
Coba Sendiri
Ingin langsung menguji fungsi TRIM ini? Anda bisa memvalidasi query SQL dengan tool SQL Syntax Checker kami, yang mendukung dialek MySQL, PostgreSQL, SQL Server, dan SQLite.
Untuk praktik langsung dengan database sungguhan, coba DB Fiddle - tool online gratis yang memungkinkan Anda menjalankan query SQL pada database MySQL, PostgreSQL, dan SQLite langsung di browser.
Menghapus Whitespace di MySQL
Di MySQL, ada beberapa fungsi yang bisa Anda gunakan untuk menghapus whitespace. Kita akan fokus pada TRIM(), yang dapat menghapus whitespace di awal, di akhir, atau di keduanya.
Sintaks
TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str)
- BOTH: Menghapus karakter di awal dan di akhir.
- LEADING: Menghapus karakter dari depan.
- TRAILING: Menghapus karakter dari belakang.
- remstr: Karakter atau whitespace yang akan dihapus (default-nya whitespace).
Contoh
SELECT TRIM(' Hello World ') AS trimmed_string;
Output yang Diharapkan:
+----------------+
| trimmed_string |
+----------------+
| Hello World |
+----------------+
Contoh dengan Karakter Tertentu
SELECT TRIM(BOTH '-' FROM '---Hello World---') AS trimmed_string;
Output yang Diharapkan:
+----------------+
| trimmed_string |
+----------------+
| Hello World |
+----------------+
Menghapus Whitespace di PostgreSQL
PostgreSQL menyediakan fungsi TRIM() yang serupa.
Contoh
SELECT TRIM(' PostgreSQL User ') AS trimmed_string;
Output yang Diharapkan:
+------------------+
| trimmed_string |
+------------------+
| PostgreSQL User |
+------------------+
Menggunakan Fungsi Khusus
PostgreSQL juga mendukung LTRIM() dan RTRIM().
- LTRIM(): Menghapus whitespace di awal.
- RTRIM(): Menghapus whitespace di akhir.
Contoh
SELECT LTRIM(' Leading whitespace') AS ltrimmed_string;
SELECT RTRIM('Trailing whitespace ') AS rtrimmed_string;
Output yang Diharapkan:
+--------------------+
| ltrimmed_string |
+--------------------+
| Leading whitespace |
+--------------------+
+--------------------+
| rtrimmed_string |
+--------------------+
| Trailing whitespace|
+--------------------+
Menghapus Whitespace di SQL Server
SQL Server 2017 dan versi setelahnya mendukung fungsi standar TRIM(), yang secara default menghapus whitespace di awal dan di akhir.
Menggunakan TRIM() (SQL Server 2017+)
SELECT TRIM(' SQL Server ') AS trimmed_string;
Output yang Diharapkan:
+----------------+
| trimmed_string |
+----------------+
| SQL Server |
+----------------+
Menggunakan LTRIM() dan RTRIM() (Semua Versi)
Untuk SQL Server versi lama, atau jika Anda hanya perlu menghapus satu sisi, gunakan LTRIM() dan RTRIM().
SELECT LTRIM(' SQL Server') AS ltrimmed_string;
SELECT RTRIM('SQL Server ') AS rtrimmed_string;
Output yang Diharapkan:
+-----------------+
| ltrimmed_string |
+-----------------+
| SQL Server |
+-----------------+
+-----------------+
| rtrimmed_string |
+-----------------+
| SQL Server |
+-----------------+
Untuk menghapus whitespace di awal dan di akhir pada versi lama, gabungkan kedua fungsi secara bertingkat:
SELECT LTRIM(RTRIM(' SQL Server ')) AS fully_trimmed_string;
Output yang Diharapkan:
+----------------------+
| fully_trimmed_string |
+----------------------+
| SQL Server |
+----------------------+
Menghapus Whitespace di SQLite
Di SQLite, gunakan fungsi TRIM(), yang cara kerjanya mirip dengan implementasi di MySQL.
Contoh
SELECT TRIM(' Hello SQLite ') AS trimmed_string;
Output yang Diharapkan:
+---------------+
| trimmed_string|
+---------------+
| Hello SQLite |
+---------------+
Contoh Praktis: Membersihkan Data dalam Tabel
Berikut contoh nyata cara menggunakan fungsi TRIM untuk membersihkan data dalam tabel. Misalkan Anda memiliki tabel customers yang bermasalah dengan whitespace:
CREATE TABLE customers (
id INT PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100)
);
INSERT INTO customers VALUES
(1, ' John Doe ', ' john@example.com'),
(2, 'Jane Smith ', 'jane@example.com '),
(3, ' Bob Wilson', ' bob@example.com ');
UPDATE customers
SET name = TRIM(name),
email = TRIM(email);
SELECT id, CONCAT('[', name, ']') AS name, CONCAT('[', email, ']') AS email
FROM customers;
Pola ini berlaku di semua database utama, meskipun sintaks CONCAT bisa sedikit berbeda.
Kesimpulan
Menghapus whitespace di SQL adalah operasi sederhana namun ampuh yang membantu normalisasi dan persiapan data. Setiap database punya sintaks dan kemampuannya sendiri, tetapi fungsi intinya tetap sama. Manfaatkan fungsi-fungsi trim ini untuk memastikan data Anda sesuai harapan, sehingga query dan laporan di seluruh database SQL Anda tetap akurat.
Beekeeper Studio Adalah GUI Database Gratis & Open Source
Tool query & editor SQL terbaik yang pernah saya pakai. Semua yang saya butuhkan untuk mengelola database ada di sini. - ⭐⭐⭐⭐⭐ Mit
Beekeeper Studio cepat, intuitif, dan mudah digunakan. Beekeeper mendukung banyak sekali database, dan berjalan mulus di Windows, Mac, dan Linux.
Apa Kata Pengguna tentang Beekeeper Studio
"Beekeeper Studio benar-benar menggantikan alur kerja SQL lama saya. Cepat, intuitif, dan membuat bekerja dengan database jadi menyenangkan lagi."
"Saya sudah mencoba banyak GUI database, tetapi Beekeeper punya keseimbangan sempurna antara fitur dan kesederhanaan. Langsung bisa dipakai."