【发布时间】:2020-01-28 15:17:51
【问题描述】:
我想创建一个 SortID 列来对不同案例类别的结果进行排序。每个案例类别代表一个收入范围。我按案例报表上的结果进行分组,以获得每个案例的订单数量。现在我被这个 SortID 创建问题困住了。请在下面找到我当前的查询。请建议我在哪里可以将索引创建语句放在查询中。非常感谢提前!
select SalesAmountCategory, count(*) as Orders
from
(Select case
when ((SalesAmount-TaxAmt-Freight)>=100000) then '>$100000'
when ((SalesAmount-TaxAmt-Freight)>=50000) then '$50000-$100000'
when ((SalesAmount-TaxAmt-Freight)>=10000) then '$10000-$50000'
when ((SalesAmount-TaxAmt-Freight)>=5000) then '$5000-$10000'
when ((SalesAmount-TaxAmt-Freight)>=2500) then '$2500-$5000'
when ((SalesAmount-TaxAmt-Freight)>=1000) then '$1000-$2500'
when ((SalesAmount-TaxAmt-Freight)>=500) then '$500-$1000'
when ((SalesAmount-TaxAmt-Freight)>=100) then '$100-$500'
when ((SalesAmount-TaxAmt-Freight)<100) then '$0-$100'
end as SalesAmountCategory
From dbo.FactResellerSales
where OrderDate BETWEEN '2010-01-01 00:00:00.000' AND '2010-12-31 23:59:59.999'
) as t
group by SalesAmountCategory
order by SalesAmountCategory;
请在下面找到图片作为预期结果示例
【问题讨论】:
标签: sql sql-server tsql indexing case