mysql zerofill int字段中的前导零在查询时未显示

时间:2010-09-14 18:13:55

标签: mysql zerofill

我有一个带有自动增量zerofill ID号的表。当我查询数据时,ID丢失其前导零(即“000529”返回为“529”)。有没有办法保留前导零,甚至在查询语句中生成它们?我知道我可以使用STRPAD在PHP中生成它们,但对于我所在的特定项目,我想检索数据库中的数据。

3 个答案:

答案 0 :(得分:7)

使用函数LPAD()显示用零填充的数字(左):

SELECT LPAD( 529, 6, '0') AS padded;

答案 1 :(得分:0)

正是UNION ALL部分将它们转换为INT-我还没有找到一个简单的解决方案。在我看来,这是一个mySql错误。

答案 2 :(得分:0)

当您选择带有前导零的字段并使用UNION时,它将删除前导零。
我通过添加以下方法找到了解决方法:

CONVERT(id_number,char) as id_number

很显然,id_number代表您要选择的零填充字段。