我有一个带有自动增量zerofill ID号的表。当我查询数据时,ID丢失其前导零(即“000529”返回为“529”)。有没有办法保留前导零,甚至在查询语句中生成它们?我知道我可以使用STRPAD在PHP中生成它们,但对于我所在的特定项目,我想检索数据库中的数据。
答案 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
代表您要选择的零填充字段。