如何按多列之和排序

How to order by the sum of multiple columns

我有一个按月计算总销售额的查询,

select 子句的基础如下所示

SELECT
MID.menu_item_id,
ISNULL(SUM(ISNULL(CASE WHEN CSD.tendered_date_time BETWEEN 
CONVERT(datetime,'2016-07-01 06:00:00:000') AND CONVERT(datetime,'2016-08-01 
05:59:59:999')THEN CID.consumed_quantity END,0)),0) 
AS [JUL],

这会循环到不同的月份。我想对所有这些月的总数求和,然后按此总和以降序方式排序 - 因此我们有一个列表 menu_item_ids 按他们的总销售额排序。

您将添加另一列:

SELECT MID.menu_item_id,
       SUM(CID.consumed_quantity) as total
       SUM(CASE WHEN CSD.tendered_date_time BETWEEN 
CONVERT(datetime,'2016-07-01 06:00:00.000') AND CONVERT(datetime, '2016-08-01 
05:59:59.999') THEN CID.consumed_quantity ELSE 0 END) AS [JUL],
       . . .
. . .
ORDER BY SUM(CID.consumed_quantity) DESC;