日期:2014-05-18  浏览次数:20647 次

SQL SERVER 取前十条记录的问题
例如一个表的列 分别为:业务员,客户,业绩

我想是对于所有的业务员,显示他们前十名的客户,在对前十的客户和该业务员的所有客户分别进行小计和合计。这样改怎么实现比较好呢?

------解决方案--------------------
SQL code


;with t1 as 
(
    select row_number() over (partition by [业务员] order by [业绩] desc) as R,
            [业务员],[客户],[业绩] from [表]
)t2 as 
(
    select [业务员],[客户],[业绩] from t1 where  r <=10
)
select * from t2 /*前10名 客户*/

--剩下的楼主自己解决吧

------解决方案--------------------
http://topic.csdn.net/u/20090406/21/d801c681-3187-42f3-ab1a-caa9124a9074.html?67857