2019年10月21日 数据库sql只取最新一条的数据

场景:比如一个用户在数据库表中有多条记录,我只需要取最新的一条数据

 

可能最常用的是首先想到先order by排序,然后rownum取一条数据,但是rownum的查询效率极低,不建议使用,

 

现提供另一种实现方法:

select  * from hrmresource c  where NOT EXISTS(
                              select * from hrmresource where loginid=c.loginid AND operatedate > c.operatedate
                               and status in('0','1','3','7'))
                               and c.loginid is not null and c.status in('0','1','3','7')

posted @ 2019-10-21 14:49  流心语  阅读(1634)  评论(0编辑  收藏  举报