我有这种数据。
ID
1899
11999
008999
我需要将数据更新到这个。我只需要在前面填写"0"或"00",如果有足够的 6 位数字,我就会保留。
ID
001899
011999
008999
第一次将该列的数据类型更改为 char
ALTER TABLE `table` CHANGE `id` `id` CHAR(6);
然后使用 LPAD((
UPDATE table SET `id`=LPAD(`id`, 6, '0');
我建议不要进行此更新,也不要将数字数据存储为文本。 相反,如果您需要查看带有填充零的数字,只需在查询时处理它,例如
SELECT RIGHT(CONCAT('000000', ID), 6) AS ID_padded
FROM yourTable;
严格来说,我们也应该在调用文本之前ID
CONCAT
,但MySQL应该能够通过隐式转换来应对这个问题。