如何从varchar类型查询get max id?

时间:2012-02-22 08:08:13

标签: php mysql max

我有表和列varchar类型列id 值为m1,m2,...,m9,m10,m11,m12 然后我使用查询

  

从表

中选择MAX(id)

但结果为m9,因为它将m10视为'm','1','0'作为单个字符。所以m9> m1(0)。

请帮忙?如何从varchar类型查询get max id?

2 个答案:

答案 0 :(得分:2)

您可以使用子字符串来实现最大数量

select max(CAST((substring(id,2)) AS DECIMAL(5,0))) from table

最后你也可以使用'm'

进行cancat
select concat('m'+ max(CAST((substring(id,2)) AS DECIMAL(5,0)))) from table

答案 1 :(得分:1)

select max(CAST((substring(id,2)) AS DECIMAL(5,2))) from table;

应该这样做。