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')

上一篇:关于Oracle数据库的rownum应用


下一篇:【Oracle】【9】取前N条记录——rownum和row_number() over()的使用