Топ 10 филиалов, в которых продажи в феврале были выше, чем в январе - PullRequest
0 голосов
/ 13 мая 2019

Мне нужно показать результаты 10 лучших филиалов магазина, в которых ежемесячные продажи в феврале были выше, чем в январе.

Мои столбцы выглядят так -

BranchID
SaleDate
SaleAmount

Я пытался разделить данные по Branchid и месяцу продаж, но я не уверен, как объединить группирование с разделением.

select branchid, 
       datepart(month, saledate) as month, 
       sum(saleamount) over (partition by datepart(month, saledate), branchid  order by saledate) as 'Monthly Sales' 
from sales

1 Ответ

0 голосов
/ 13 мая 2019

Если вы ищете 10 самых высоких приростов продаж с января по февраль, вот один из способов сделать это ниже.

SELECT TOP(10) --Get top 10
        [BranchID],
        ISNULL(SUM(
            CASE WHEN MONTH([SaleDate]) = 2
            THEN [SaleAmount]
            ELSE 0 END
        ),0) as [SaleAmountFeb], --Sum all Feb sales
        ISNULL(SUM(
            CASE WHEN MONTH([SaleDate]) = 1
            THEN [SaleAmount]
            ELSE 0 END
        ),0) as [SaleAmountJan], --Sum all Jan sales

        ISNULL(SUM(
            CASE WHEN MONTH([SaleDate]) = 2
            THEN [SaleAmount]
            ELSE 0 END
        ),0) - 
        ISNULL(SUM(
            CASE WHEN MONTH([SaleDate]) = 1
            THEN [SaleAmount]
            ELSE 0 END
        ),0) as [Increase in Sales] --Increase in sales Jan to Feb

    FROM sales
    GROUP BY
        [BranchID]
    ORDER BY
        4 DESC --Order by Increase in sales Jan to Feb (Largest to smallest)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...