СУММА ТОП 10 рядов

У меня есть запрос, в котором я выбираю только ТОП-10 строк, но у меня есть функция SUM, которая по-прежнему принимает сумму всех строк (не учитывая ТОП-10). Как мне получить всего лишь 10 лучших строк? Вот моя функция СУММА:

SUM( fact.Purchase_Total_Amount) Total

2 ответа

Вы пытались использовать что-то вроде этого:

SELECT SUM(Whatever)
FROM (
    SELECT TOP(10) Whatever
    FROM TableName
) AS T

Используйте функцию TOP с вложенным запросом

SELECT SUM(innerTable.Purchase_Total_Amount) FROM
(SELECT TOP 10 Purchase_Total_Amount FROM Table) as innerTable
SELECT SUM(Whatever)
FROM (
    SELECT TOP(10) Whatever
    FROM TableName
) AS T
Другие вопросы по тегам