通过在SQL Server中分组进行排序

擎天柱

如何根据属性分组对点列进行排序?

例如:

   degreeid   studentid    point
     1          1           100
     2          1           150
     3          1           205 
     4          1           600
     1          2           520
     2          2           566
     3          2           450
     4          2           566
     5          2           450
     ......
     1          n           m

我想以这种方式显示查询结果:

  degreeid     studentid      point
       1            2           520
       1            1           100
       1            n           90       --( min value)
       2            2           566
       2            1           150
       2            n           70       --( min value)

我使用了光标,对于每个度数

ORDER point DESC

和结果

INSERT INTO #temporary TABLE

该临时表用于显示数据。

因为我有很多数据,大约有500'000条记录,这是一种好方法吗?

韦尔切利

没有您的查询很难知道,但是我想您想订购2条条件:

select degreeid   ,studentid    ,point
  from table
order by degreeid   , point desc

如果要分组,order by则相同:

select degreeid   ,studentid    ,sum(point) as sum_point
  from table
 group by degreeid   ,studentid
order by degreeid   , sum_point desc

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章