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

一个看似简单的有关问题。小弟我不会

2012-02-24 
一个看似简单的问题。我不会有一表a,有三个字段:f1f2f31a011b021g032c012d022e033f01想每个相同的f1只取第

一个看似简单的问题。我不会
有一表a,有三个字段:
f1 f2 f3
1a01
1b02
1g03
2c01
2d02
2e03
3f01
想每个相同的f1只取第一条数据

结果:
f1 f2 f3
1a01
2c03
3f01


[解决办法]
--按记录顺序取第一条
select * from tb a where f3=(select top 1 f3 from tb where f1=a.f1)

--取最小
select * from tb a where f3=(select min(f3) from tb where f1=a.f1)

--取最大
select * from tb a where f3=(select max(f3) from tb where f1=a.f1)

--随机取
select * from tb a where f3=(select top 1 f3 from tb where f1=a.f1 order by newid())

热点排行