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

求SQL:相同数据根据记录的多少进行排序,该怎么处理

2012-03-12 
求SQL:相同数据根据记录的多少进行排序如:gno887774326432611111111结果:先据根据记录的多少进行排序,然后

求SQL:相同数据根据记录的多少进行排序
如:
gno
88
7
7
7
4326
4326
11
11
11
11

结果:先据根据记录的多少进行排序,然后每条重复数据只要显示1条数据,按时间排序,最后发布时间排第一。
11(11有4条记录所以排第一)
77(77有3条记录所以排第二)
4326(4326有2条记录所以排第三)
88(88有1条记录所以排第最后)

[解决办法]

SQL code
select f1,count(*) fcfrom tbgroup by f1order by fc desc
[解决办法]
/*
如:
gno
88
7
7
7
4326
4326
11
11
11
11
结果:先据根据记录的多少进行排序,
然后每条重复数据只要显示1条数据,
按时间排序,最后发布时间排第一。
11(11有4条记录所以排第一)
77(77有3条记录所以排第二)
4326(4326有2条记录所以排第三)
88(88有1条记录所以排第最后)
*/

go
if OBJECT_ID('tbl') is not null
drop table tbl
go
create table tbl(
gno varchar(10)
)
go
insert tbl
select '88' union all
select '7' union all
select '7' union all
select '7' union all
select '4326' union all
select '4326' union all
select '11' union all
select '11' union all
select '11' union all
select '11'

select gno,COUNT(*) as 记录条数 from tbl 
group by gno order by COUNT(*) desc

/*
这个是你要的结果??
gno记录条数
114
73
43262
881
*/

[解决办法]
SQL code
select gno from t1 group by gnoorder by count(gno) desc 

热点排行