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