我有一张桌子:
ID A    B    C    D
1  10   20   30   5
2  332  80   32   12
3  41   20   82   42
.
.
.
我想查询给我
A   B   C   D
其中A包含表格前30行的A列平均值,按ID升序排序,B包含表格前30行的B列平均值,按ID升序排序等.
如果表的行数少于30行,则仍然取平均值,但平均值不超过行数.
首先选出30行,从中选择以获得平均值:
select avg(A), avg(B), avg(C), avg(D)
from (
   select top 30 A, B, C, D
   from TheTable
   order by ID
) x
| 归档时间: | 
 | 
| 查看次数: | 149 次 | 
| 最近记录: |