0

1つの列の平均を計算したいが、最後の10行のみを計算したいテーブルがあります。

SELECT AVG(columnName) as avg FROM tableName

このクエリは1行しか返さないため、topを直接適用することはできません。最新の10行を取得し、それらの平均を計算する方法が必要です。

4

2 に答える 2

5

これを試して:

SELECT AVG(columnName) FROM
(SELECT TOP 10 columnName FROM tableName ORDER BY ColumnWhichHoldsOrder DESC) A
于 2013-01-05T20:37:54.190 に答える
3
select avg(columnName)
from (
   select columnName, 
          row_number() over (order by some column desc) as rn
   from tableName
) t
where rn <= 10;
于 2013-01-05T20:38:52.253 に答える