我正在尝试在mysql查询中添加1到我的最大字段值:
SELECT MAX(SUBSTRING_INDEX(0001-14-A,'-',1)) AS prefix;
结果:
prefix
------
0001
然而,当我喜欢这样的时候:
SELECT MAX(SUBSTRING_INDEX(0001-14-A,'-',1)) + 1 AS prefix;
结果:
prefix
------
2
如何将值格式保留为****?请指教。
答案 0 :(得分:4)
首先,您缺少单引号:
SELECT MAX(SUBSTRING_INDEX('0001-14-A', '-', 1)) + 1 AS prefix
当您向该值添加一个时,它将转换为整数。要获得字符串,您需要填充它:
SELECT LPAD(MAX(SUBSTRING_INDEX('0001-14-A', '-', 1)) + 1, 4, '0') AS prefix