Oracle表里 同个人有五条数据 ,取出id值最大的那条数据:



--Oracle表里 同个人有五条数据 ,取出id值最大的那条数据:

--1:创建表:
create table a(id number(20) ,name varchar2(300) ) ;
create table b(id number(20) ,fenshu  varchar2(300),a_id number(20) ,kemu varchar2(300) ) ;


--2:插入数据
insert into a (ID, NAME) values (1, 'A');
insert into b (ID, FENSHU, A_ID, KEMU) values (1, '45', 1, 'yw');

insert into b (ID, FENSHU, A_ID, KEMU) values (2, '56', 1, 'sx');

insert into b (ID, FENSHU, A_ID, KEMU) values (3, '67', 1, 'hx');


--3:查询数据

  select  * from a ;
image
select  * from b ;
image



--4:查询最大值数据
 select *
  from (select t.*,
               --降序 max最先
               row_number() over(partition by t.a_id order by t.id desc) rn
          from b t) c
 where rn = 1;

 select  * from b ;
image
为人:谦逊、激情、博学、审问、慎思、明辨、 笃行
学问:纸上得来终觉浅,绝知此事要躬行
为事:工欲善其事,必先利其器。
态度:道阻且长,行则将至;行而不辍,未来可期
转载请标注出处!
原文地址:https://www.cnblogs.com/ios9/p/14630821.html