Sử dụng hàm LPAD() để đệm trái (left pad) giá trị.
Tạo bảng demo
mysql> create table DemoTable (
-> Number int
-> );
Query OK, 0 rows affected (2.26 sec)
Chèn dữ liệu
mysql> insert into DemoTable values(857786); Query OK, 1 row affected (0.26 sec) mysql> insert into DemoTable values(89696); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable values(89049443); Query OK, 1 row affected (0.25 sec)
Hiển thị dữ liệu gốc
mysql> select * from DemoTable;
Kết quả
+----------+ | Number | +----------+ | 857786 | | 89696 | | 89049443 | +----------+ 3 rows in set (0.00 sec)
Cập nhật: đệm trái số '9' để độ dài 7 ký tự cho các giá trị < 7 chữ số
mysql> update DemoTable set Number = LPAD(Number, 7, '9') where length(Number) < 7; Query OK, 2 rows affected (0.40 sec) Rows matched: 2 Changed: 2 Warnings: 0
Kiểm tra kết quả
mysql> select * from DemoTable;
Kết quả - 857786 thành 9857786, 89696 thành 9989696
+----------+ | Number | +----------+ | 9857786 | | 9989696 | | 89049443 | +----------+ 3 rows in set (0.00 sec)
Giải thích LPAD(str, len, padstr):
str: Chuỗi gốc (số được chuyển thành chuỗi tự động).len: Độ dài mong muốn.padstr: Chuỗi dùng để đệm (lặp lại nếu cần).
Hàm đối ứng: RPAD() - đệm phải (right pad).
Lưu ý: Cột Number là INT, MySQL tự chuyển sang chuỗi để LPAD, rồi chuyển ngược về INT. Cân nhắc đổi sang VARCHAR nếu cần giữ dấu 0 đầu.