问题

有个表格(id,machineName,value,updatetime),里面比如有10个机台,里面记录了这10个机台的几十万条数据

如何获取每个机台的最后一笔数据?

machines表

在这里插入图片描述

解决办法

1.首先获得每个机台最后的更新时间

select machineName,max(updatetime) latest  from machines group by machineName
 

2.然后查询这些最近更新的数据

select m.* from machines m 
inner join (
select machineName,max(updatetime) latest  from machines group by machineName) t 
on m.machineName=t.machineName and m.updatetime=t.latest
 
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐