การลบช่องว่าง (Whitespace) นำหน้าและท้ายสตริงในทุกแถวด้วย TRIM()
ใช้ TRIM() ในคำสั่ง UPDATE เพื่อลบช่องว่าง leading/trailing ออกจากคอลัมน์ VARCHAR/TEXT
สร้างตารางและข้อมูล (มีช่องว่าง)
mysql> create table DemoTable1405 (
-> FirstName varchar(20),
-> LastName varchar(20)
-> );
Query OK, 0 rows affected (0.55 sec)
mysql> insert into DemoTable1405 values(' Chris', ' Brown ');
mysql> insert into DemoTable1405 values('David ', ' Miller ');
mysql> insert into DemoTable1405 values(' Carol ', ' Taylor ');
ข้อมูลก่อน TRIM
+------------------+----------------+ | FirstName | LastName | +------------------+----------------+ | Chris | Brown | | David | Miller | | Carol | Taylor | +------------------+----------------+
คำสั่ง UPDATE TRIM ทั้งสองคอลัมน์
mysql> update DemoTable1405
-> set FirstName = trim(FirstName), LastName = trim(LastName);
Query OK, 3 rows affected (0.18 sec)
Rows matched: 3 Changed: 3 Warnings: 0
ข้อมูลหลัง TRIM
+-----------+----------+ | FirstName | LastName | +-----------+----------+ | Chris | Brown | | David | Miller | | Carol | Taylor | +-----------+----------+
รูปแบบ TRIM ต่างๆ
| ฟังก์ชัน | คำอธิบาย | ตัวอย่าง |
|---|---|---|
TRIM(str) | ลบช่องว่างทั้งหน้าและหลัง | TRIM(' abc ') → 'abc' |
LTRIM(str) | ลบช่องว่างหน้า (leading) | LTRIM(' abc') → 'abc' |
RTRIM(str) | ลบช่องว่างหลัง (trailing) | RTRIM('abc ') → 'abc' |
TRIM(BOTH 'x' FROM str) | ลบตัวอักษร 'x' ทั้งหน้าและหลัง | TRIM(BOTH 'x' FROM 'xxabcxx') → 'abc' |
TRIM(LEADING 'x' FROM str) | ลบ 'x' หน้าเท่านั้น | TRIM(LEADING '0' FROM '00123') → '123' |
TRIM(TRAILING 'x' FROM str) | ลบ 'x' หลังเท่านั้น | TRIM(TRAILING '.' FROM 'file..') → 'file' |