与分组结合使用时,如何在T-SQL查询中正确排序日期?

时间:2018-02-17 09:56:39

标签: sql-server tsql sql-server-2012

我正在尝试制作一个T-SQL查询,显示每日收集的总金额,按订单的降序排序。

以下是我的尝试:

select (sum(MonthAmount) + sum(LateFine)) as DailyCollection, 
    CONVERT(varchar(11),ApprovedDate,103) as InboxDate 
from [dbo].[SlipDetails] 
where ApprovedByAdmin='A' 
group by CONVERT(varchar(11),ApprovedDate,103) 
order by CONVERT(DATE, CONVERT(varchar(11),ApprovedDate,103),103) desc

产生结果:

30/01/2017  36010   
30/11/2017  42780   
29/12/2017  23090   
29/11/2017  66060   
28/12/2017   4700   
28/11/2017  84370 

我必须按日期的降序显示每个电子商务门户的管理面板中的每日收款金额。如何更改此查询以正确排序日期?

1 个答案:

答案 0 :(得分:1)

在某些日子之前,我面临着同样的问题,但现在我有了解决方案。

select (sum(MonthAmount) + sum(LateFine)) as DailyCollection, 
CONVERT(varchar(11),ApprovedDate,103) as InboxDate  
from [dbo].[SlipDetails] where ApprovedByAdmin='A' 
group by CONVERT(varchar(11),ApprovedDate,103) 
order by CONVERT(DATE,  CONVERT(varchar(11),ApprovedDate,103),103) desc

根据您的需要使用此查询。您将获得预期的结果。