这个MySQL表如何按照car_num分组,查出每一组car_online_time最大值对应

SELECT *,MAX(car_online_time) from qdwyc_car_online GROUP BY car_num

这样查出来 第一条数据不对呀?不是最大值

https://img4.mukewang.com/5cc261020001318b08000243.jpg

https://img.mukewang.com/5cc261040001b6c008000107.jpg

SMILET
浏览 528回答 2
2回答

Cats萌萌

你Group By的是car_num字段,所以实际上是按照car_num来分组的, 按照car_num分组之后:值为44的分组里面,car_online_time这个字段最大的值是2016-11-07 11:35:36。值为66的分组里面,car_online_time这个字段最大的值是2016-11-07 11:29:26。值为鲁B1的分组里面,car_online_time这个字段最大的值是2016-11-04 10:21:24。所以结果没错。因为你查询的内容是*, MAX(..), 所以分组里的最大值是在最后一列, 而不是前面的数据。

慕森王

select * from (select * from qdwyc_car_online order by car_online_time desc  ) as m group by car_num
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java