1つの列の平均を計算したいが、最後の10行のみを計算したいテーブルがあります。
SELECT AVG(columnName) as avg FROM tableName
このクエリは1行しか返さないため、topを直接適用することはできません。最新の10行を取得し、それらの平均を計算する方法が必要です。
1つの列の平均を計算したいが、最後の10行のみを計算したいテーブルがあります。
SELECT AVG(columnName) as avg FROM tableName
このクエリは1行しか返さないため、topを直接適用することはできません。最新の10行を取得し、それらの平均を計算する方法が必要です。
これを試して:
SELECT AVG(columnName) FROM
(SELECT TOP 10 columnName FROM tableName ORDER BY ColumnWhichHoldsOrder DESC) A
select avg(columnName)
from (
select columnName,
row_number() over (order by some column desc) as rn
from tableName
) t
where rn <= 10;