例如:字段1,字段2,字段3 1 A 100 1 B 900 2 C 100 2 D 600 2 A 50 想得到的结果是: 1 B 100 2 D 600 结果弄错了,重发 例如:字段1,字段2,字段3 1 A 100 1 B 900 2 C 100 2 D 600 2 A 50 想得到的结果是: 1 B 900 2 D 600
最新回答
死在新鲜感
2024-10-17 11:24:52
create table #test(id int,a varchar(100),b int);
insert into #test values (1,'a',100) insert into #test values (1,'b',200) insert into #test values (2,'A',100) insert into #test values (2,'B',500) insert into #test values (2,'D',500)
select * from #test aa where not exists (select 1 from #test bb where aa.id=bb.id and aa.b<bb.b) 如果最大值有两个,都会出来。这个是局限。
select tt.id,tt.a,tt.b from (select id,a,b,row_number() over (order by b desc) rn from #test ) tt where rn=1 这个适合2005以上版本
浪菊怪哟
2024-10-17 12:43:21
select * from table1 t1 where not exists (select * from table1 where 字段1=t1.字段1 and 字段3>t1.字段3)