Để loại bỏ hoàn toàn mọi khoảng trắng (space) trong một cột, sử dụng REPLACE() thay thế ký tự space ' ' bằng chuỗi rỗng ''.
Cú pháp
UPDATE yourTableName SET yourColumnName = REPLACE(yourColumnName, ' ', '');
Ví dụ minh họa
Tạo bảng và chèn dữ liệu có khoảng trắng lẫn trong tên:
CREATE TABLE stripAllSpacesDemo (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(100)
);
INSERT INTO stripAllSpacesDemo (Name) VALUES ('Jo h n');
INSERT INTO stripAllSpacesDemo (Name) VALUES (' Joh n');
INSERT INTO stripAllSpacesDemo (Name) VALUES ('Jo hn');
INSERT INTO stripAllSpacesDemo (Name) VALUES ('J ohn');
INSERT INTO stripAllSpacesDemo (Name) VALUES ('John ');
Dữ liệu ban đầu:
+----+-----------+ | Id | Name | +----+-----------+ | 1 | Jo h n | | 2 | Joh n | | 3 | Jo hn | | 4 | J ohn | | 5 | John | +----+-----------+
Thực hiện xóa khoảng trắng:
UPDATE stripAllSpacesDemo SET Name = REPLACE(Name, ' ', '');
Kết quả:
+----+------+ | Id | Name | +----+------+ | 1 | John | | 2 | John | | 3 | John | | 4 | John | | 5 | John | +----+------+
Lưu ý:
- Cách này chỉ xóa ký tự space thông thường (
ASCII 32). Nếu dữ liệu chứa tab (\t), newline (\n), hoặc các ký tự trắng Unicode khác, bạn cần dùngREGEXP_REPLACE()(MySQL 8.0+) hoặc lặp nhiều lầnREPLACE()cho từng loại ký tự. - Luôn sao lưu dữ liệu trước khi chạy
UPDATEtrên toàn bảng.