我在MySQL数据库中有int
类型的列。
我希望将一个数字转换为固定的数字。
例如:
如果数字是69,那么它应该转换为000069
如果数字是230则应该转换为000230
答案 0 :(得分:7)
该字段必须为CHAR
或VARCHAR
才能保留已填充的值,然后您使用LPAD
进行转换:
UPDATE table SET col = LPAD(col, 6, '0');
但是,如果这是在应用程序端而不是数据库端完成的话,那对我来说会更有意义(除非你在JOIN
中需要这个值。)
答案 1 :(得分:5)
您可以对整数字段使用ZEROFILL选项 -
CREATE TABLE table1 (
number INT(6) ZEROFILL DEFAULT NULL
);
但是你的MySQL客户端必须支持这个选项。
尝试MySQL命令行客户端 -
INSERT INTO table1 VALUES(1);
SELECT * FROM table1;
+--------+
| number |
+--------+
| 000001 |
+--------+