数据库
首页 > 数据库> > mysql 取出分组后价格最高的数据

mysql 取出分组后价格最高的数据

作者:互联网

看到这个问题,就想到了用 max 函数和 group by 函数,先 group by 然后取得 max, 但是这样真的可以吗? 不可以 !

为什么? 因为要了解 :group by 后,select 取出的默认只是每个分组的第一条数据,但是这条数据和选出的 max,很有可能并不是同一条中的。

比如我们表的内容是这样的:

 

执行sql语句 select *  from test_group group by num; 得到的结果:

 

执行sql语句 select * , max(price) from test_group group by num; 得到的结果:

 

发现 max price 的价格和当前这条数据的实际价格根本对应不起来。由此可见: 这种写法其实是错误的,取出来的数据没有任何含义

 

那正确的写法如何写呢?

 

标签:group,max,price,sql,分组,mysql,test,取出,select
来源: https://www.cnblogs.com/mlllily/p/15825940.html