有如下数据库及数据:
create table oness(
oids number(4) primary key,
Names varchar2(10) not null,
Email varchar2(20),
LastLogin date
);
添加的数据如下:
查询出test4、test1、test2用户最近的登录记录有两种方式:
第一种:
select * from oness a
where not exists(select 1 from oness where Names = a.Names and LastLogin > a.LastLogin);
查询结果为:
第二种:
select * from oness a where LastLogin=(select max(LastLogin) from oness where Names=a.Names);
查询结果为:
第三种:
SELECT * FROM (SELECT ROW_NUMBER() OVER(PARTITION BY T.Names ORDER
BY T.LastLogin DESC) LEV,T.* FROM oness T) T1
WHERE LEV = 1;
查询结果为:
以上三种方式均可。