日期:2014-05-16  浏览次数:20651 次

max()函数的疑问
假设一张表里面有一列是a,我想找出a最大的字段。我用的是:
select   max(a)   from   table;
一开始没发现错误,可以使用,但是后来发现如果我有两个字段的a列相同而正好它的值是最大的话,这个语句竟然返回为空。为什么两个不都返回呢?或者返回一个呢?
有没有一种方法可以返回之中的一个?
谢谢。


------解决方案--------------------
MySQL怎么可能犯这么低级的错误!


mysql> select * from kqj;
+--------+------+------+
| gongid | sbsj | xnsk |
+--------+------+------+
| 1 | 35 | 20 |
| 2 | 0 | 0 |
| 3 | 25 | 35 |
| 1 | 39 | 36 |
| 2 | 0 | 0 |
| 3 | 35 | 0 |
+--------+------+------+
6 rows in set (0.00 sec)

mysql> select max(gongid) from kqj;
+-------------+
| max(gongid) |
+-------------+
| 3 |
+-------------+
1 row in set (0.00 sec)