关于分类排序

A B
1 20010107
2 20100101
3 20010208
1 20010108
3 20010105
我想显示成如下效果
A B
3 20010105
3 20000208
1 20010107
1 20010108
2 20100101
先按A分类,再按各分类的第一条排序,该如何实现

作者: smalldisk   发布时间: 2011-06-10

3的时间是倒序
1的时间是正序?????

作者: maco_wang   发布时间: 2011-06-10

A的顺序是没有规律的吗

作者: sz_vcp2007   发布时间: 2011-06-10

是根据各分类的第一条记录的B排序,A不用排序

作者: smalldisk   发布时间: 2011-06-10

各分类的第一条是哪一条?

作者: aspwebchh   发布时间: 2011-06-10

3 20010105
1 20010107
2 20100101

作者: smalldisk   发布时间: 2011-06-10

SQL code
select * from tb order by a,b

作者: cd731107   发布时间: 2011-06-10

SQL code

declare @table table (A int,B varchar(10))
insert into @table
select 1,'20010107' union all
select 2,'20100101' union all
select 3,'20010208' union all
select 1,'20010108' union all
select 3,'20010105'

select a.* from @table a left join(select * from @table b where B=
(select min(B) from @table where A=b.A)) c on a.A=c.A order by c.B,a.B
/*
A           B
----------- ----------
3           20010105
3           20010208
1           20010107
1           20010108
2           20100101
*/

作者: maco_wang   发布时间: 2011-06-10