如何查询varchar类型的get max id和numeric中的值?

时间:2012-02-22 08:51:33

标签: php mysql max

我有表和列id,值为1,2,3,...,10,11,12,13。 如何从varchar类型查询get max id?我试过了

select MAX(id) from table

但结果是9,请帮忙??

3 个答案:

答案 0 :(得分:7)

看起来值是字符串并选择最大字符串。如果您希望它们按数字排序,则必须先将它们转换为数字。您可以使用CONVERT执行此操作:

SELECT MAX(CONVERT(id, SIGNED)) FROM table

您还可以使用CAST

SELECT MAX(CAST(id AS SIGNED)) FROM table

他们几乎做同样的事情,除非CONVERT有其他选择,如果你需要它们。

答案 1 :(得分:3)

您可以将varchar转换为整数 - 类似于

SELECT MAX(CONVERT(id, SIGNED)) FROM table

http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html#function_convert

答案 2 :(得分:1)

SELECT MAX(id+0) FROM表可以解决问题