问题描述:从mainHour表里面,针对每个UID,把time最大的的那条记录提取出来!
例如有如下两条记录:
id    uid    time    border
1     1234   12:45   MP3
2     1234   15:23   ring
………………
想得到的结果记录是:第2条。即UID=1234的最后时间是15:23,此时所对应的BORDER是ring;有人使用如下语句得到结果,经过验证,似乎也是正确的:
SELECT * FROM `mainHour` group by uid having max(time)=time;不能明白的是:having针对的是组,这里怎么可以针对记录进行筛选呢? 这条语句是怎么执行的呀?先谢谢了!!!