君辰的gravatar头像
君辰 2014-08-30 21:38:01

mysql sql查询语句优化问题

需求很简单,就是根据ID分组后,求出每组时间最新的一条数据,我现在SQL是这样的

select * from (select * from t_alarmrecord order by ALARMTIME desc) a  group by msgid order by ALARMTIME desc 

20W数据需要3秒,太慢啦。求大神帮忙,其他的只是取出时间最新,但是其他字段不是对应的,纠结2天啦。无索引

所有回答列表(1)
smione的gravatar头像
smione  LV7 2014年9月1日

select t.* from t_alarmrecord t where ALARMTIME = (select max(ALARMTIME ) from t_alarmrecord where ALARMTIME = t.ALARMTIME ) order by msgid desc

评论(1) 最佳答案
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友