[英]SQL- finding percentages
我需要幫助找出有關此SQL問題的查詢-
查找最近12個月內每個州(狀態)每月在其SLA中處理的索賠的百分比。
謝謝!
Id **l** ClaimID **l** StatusID **l** CreatedDate **l** CreatedBy
===========================================================================
1174 **l** 977 **l** 1 **l** 2018-06-01 18:01:31.387 **l** 1
---------------------------------------------------------------------------
1175 **l** 978 **l** 1 **l** 2018-06-01 18:01:31.387 **l** 1
---------------------------------------------------------------------------
1176 **l** 979 **l** 1 **l** 2018-06-01 18:01:31.387 **l** 1
---------------------------------------------------------------------------
1177 **l** 980 **l** 1 **l** 2018-06-01 18:01:31.403 **l** 1
---------------------------------------------------------------------------
1178 **l** 981 **l** 1 **l** 2018-06-01 18:01:31.403 **l** 1
---------------------------------------------------------------------------
你可以試試看。
SELECT
StatusID
,count(StatusID) AS CountOfGroupedStatusIDs
,sum(count(*)) OVER() AS TotalAmountOfItems
,100.00 * count(StatusID) / sum(count(*)) OVER() AS Perc
FROM Table
WHERE CreatedDate BETWEEN DATEADD(month, DATEDIFF(month, 0, DATEADD(MONTH, -12, GETDATE())), 0) AND GETDATE()
GROUP BY StatusID
它按statusID /狀態分組,然后對每個組計數多少個狀態,並在表中進行全部計數,然后根據這些值創建百分比。
WHERE子句僅顯示FROM TODAY減去12個月,但是設置了開始日期過濾器,以使該月從第1天開始而不是從今天起的12個月(例如第27天)開始。
如果您想將其更改為從今天起12個月。 這將是:
WHERE CreatedDate BETWEEN DATEADD(MONTH, -12, GETDATE()) AND GETDATE()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.