首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求一这样一条SQL语句,困扰小弟我好几天了!

2012-03-24 
求一这样一条SQL语句,困扰我好几天了!!有如下表表t字段1,字段2,字段31201aa1201bb1200cc2301dd2301ee2300f

求一这样一条SQL语句,困扰我好几天了!!
有如下表
表t
字段1,字段2,字段3
1 201 aa
1 201 bb
1 200 cc
2 301 dd
2 301 ee
2 300 ff
3 401 gg
3 401 hh
3 400 ii
想得到如下结果,

1 201 aa
2 301 dd
3 401 gg

也就是说字段2有重复的话,只取一个,我用max()查,它却把重复的全列出来了,
以上请高手指点啊!

[解决办法]
select m.* from t m where not exists(select 1 from t where 字段1=m.字段1 and (字段2 > m.字段2 or (字段2 = m.字段2 and 字段3 < m.字段3))) order by m.字段1
[解决办法]
select * from 
(
select 
t.*, ROW_NUMBER() over (partition by c1 order by c2 desc, c3) od
from t
) tt
where od = 1

热点排行