从一个表按照类型取top1如何实现

coldljy 2006-02-20 04:25:43
表结构相关字段:
Id 标识 PK
TypeId 类型标识 FK
Sequence 顺序

要求按照顺序进行排序(可递增、可递减),取到每种类型的第一条记录
btw.性能第一
...全文
58 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhaoanle 2006-02-20
select * from tbl a where id=(select top 1 id from tbl where typeid=a.typeid order by sequence)
回复
lsxaa 2006-02-20

分组取最大
select a.*
from 表 a,(select typeid,max(sequence) as sequence from 表 group by typeid) b
where a.typeid=b.typeid and a.sequence=b.sequence

分组取最小
select a.*
from 表 a,(select typeid,min(sequence) as sequence from 表 group by typeid) b
where a.typeid=b.typeid and a.sequence=b.sequence

回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2006-02-20 04:25
社区公告
暂无公告