首页 > 数据库 > Oracle > 找出每个人最近一天的序号
请教SQL语句的写法.
http://www.itpub.net/835363.html
[@more@]有表内容如下:
序号 姓名 日期
-----------------------------------------------------------
02 -----------bb--------- 02-5月 -00
05----------- cc--------- 08-3月 -00
08----------- aa---------19-3月 -02
03----------- bb--------- 19-5月 -00
23----------- bb--------- 03-9月 -02
78----------- aa--------- 02-3月 -04
34----------- bb--------- 19-6月 -02
04----------- cc--------- 22-5月 -00
06 -----------cc--------- 30-9月 -02
07----------- cc--------- 09-3月 -04
09----------- cc --------- 15-6月 -02
想找出每个人最近一天的序号.....
序号 姓名 日期
-----------------------------------------------------------
78--------- aa--------- 02-3月 -04
23--------- bb--------- 03-9月 -02
07--------- cc --------- 09-3月 -04
结果是78,23,07
想请教一下SQL语句写法.
日期与序号是没有关系的,数量多的时候,同一天可能有很多个序号.
代码:
如下:
select seq_no "序号",
name "姓名",
date "日期"
from
(select seq_no,
name,
date,
dense_rank() over(partition by name order by date desc) rn
from test)
where rn = 1;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/92289/viewspace-962774/ ,如需转载,请注明出处,否则将追究法律责任。