如何获得列中的最高数字?

时间:2012-04-02 22:53:13

标签: php mysql

我的名为图片的表格中有一个名为 pic 的列,我希望获得该列中的最高编号。每行在 pic 中都有一个唯一的数字,每行上升 1 。但是,一行或两行在列中没有数字,而是会有一些文本。喜欢葡萄

这是表格的一个例子......

  TABLE: pictures
 ___________________
|  caption  |  pic  |
|-------------------|
|   some    |   1   |
|  random   |   2   |
|  thing    |   3   |
|   here    |grapes |
|___________________|

那么,我如何获得 pic 列中的最高数字 3

pic varchar

3 个答案:

答案 0 :(得分:5)

SELECT MAX(CONVERT(pic, UNSIGNED INTEGER)) AS max_pic
FROM pictures
WHERE CONVERT(pic, UNSIGNED INTEGER) IS NOT NULL 

WHERE pic = pic + 0条件有助于检查它是否为数值

答案 1 :(得分:1)

使用MAX()获取可用的最大值。喜欢这个

SELECT MAX(pic) FROM `pictures` WHERE CONVERT(`pic`, SIGNED INTEGER) IS NOT NULL 

答案 2 :(得分:0)

试试这个sql:

SELECT MAX(pic) FROM pictures

根据列类型,您将得到不同的结果。