您的位置:首页 > 数据库

如何使用SQL实现排名

2007-09-13 10:47 369 查看
--有销售表如下,销售人员名称及销售额(万元)
create table #temp(name nvarchar(32),saleroom int)
insert into #temp(name,saleroom) values('关羽',500)
insert into #temp(name,saleroom) values('张飞',400)
insert into #temp(name,saleroom) values('赵云',410)
insert into #temp(name,saleroom) values('马超',430)
insert into #temp(name,saleroom) values('黄忠',350)

--需要按销售额排序,得到前三名销售排名数据(不使用游标、临时表、自增字段,且在函数里的实现)
declare @temp table(id int,name nvarchar(32),saleroom int)
insert into @temp
select null,name,saleroom
from #temp order by saleroom desc

declare @id int
set @id=0
update @temp set @id=@id+1,id=@id

select top 3 id as N'销售排名',name as N'销售代表',saleroom as N'销售额(万元)' from @temp

--结束
drop table #temp
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: