2013-06-19 2 views
0

У меня есть отчет в Microsoft Visual Studio 2010 с таблицей. У меня есть список продаж клиентов, сгруппированных по месяцам. Я хотел бы добавить общую сумму всех Месяцев для каждого клиента. Затем я хотел бы сортировать по убывающей сумме общей суммы. Я добавил общий итог, но я не могу понять, как его сортировать. Какие-либо предложения?Как отсортировать по общей сумме вычисленного поля в таблице

Вот начальный набор данных запроса:

SELECT 
Customer, CustomerName, FiscalMonthNum, FiscalYear, SalesDlr 
FROM 
CustomerSalesDollars 
WHERE 
FiscalYear IN ('2013') 
ORDER BY 
SalesDlr DESC 

ответ

1
with CSD as (
    select Customer, CustomerName, FiscalMonthNum, FiscalYear, SalesDlr 
    from CustomerSalesDollars 
    WHERE FiscalYear in ('2013') 
), YearlyTotals as (
    select FiscalYear, Customer, CustomerName, SUM(SalesDlr) as YearlyTotal 
    from CSD 
    group by FiscalYear, Customer, CustomerName 
) 

select * from YearlyTotals 
order by YearlyTotal desc 

Если вы все еще хотите, чтобы все ежемесячные срывы:

with CSD as (
    select Customer, CustomerName, FiscalMonthNum, FiscalYear, SalesDlr 
    from CustomerSalesDollars 
    WHERE FiscalYear in ('2013') 
), YearlyTotals as (
    select FiscalYear, Customer, CustomerName, SUM(SalesDlr) as YearlyTotal 
    from CSD 
    group by FiscalYear, Customer, CustomerName 
) 

select CSD.*, YT.YearlyTotal from YearlyTotals YT 
join CSD on CSD.FiscalYear = YT.FiscalYear 
and CSD.Customer = YT.Customer 
and CSD.CustomerName = YT.CustomerName 
order by YearlyTotal desc, CSD.SalesDlr desc 
+0

у меня нет запроса, который получает Grand Total. Я создал рассчитанное поле для этих данных в tablix. – tsqln00b

+0

@ tsqln00b не стесняйтесь подставлять имя вашего вычисленного поля, где находится сумма. Если вы можете дать мне свой существующий запрос, я могу лучше показать вам, как его сортировать. –

+0

@ tsqln00b Я обновил запрос на основе вашего. –

Смежные вопросы