[英]Get latest records of each number in ORACLE
您需要使用ROW_NUMBER
窗函数来获取最新transdate
所有transno
select * from
(
select transid,transno,transdate,transtype,
Row_number()over(partition by transno order by transdate desc) as rn
from trans
) where RN = 1
让我知道这个是否奏效。
SELECT * FROM trans GROUP BY transno ORDER BY transid DESC LIMIT 1
我不是MySQL的高手,所以让我知道。
此解决方案的最佳方法是@Prdp的方法。 但是,还有另一种方式。 您可以像这样使用inline view
:
select * from
trans t
inner join
(
select transno, max(transdatetime) maxtransdatetime from trans group by transno
) s
on s.transno = t.transno and s.maxtransdatetime = t.transdatetime
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.