0
그래서 그룹화 한 CASE 문이 있습니다. 그러나 각 그룹화 사례 결과의 합계 비율도 계산하려고했습니다. 내가 아래에 만든 명령을 실행하면 '비율이'0 '으로 온다 왜 이해가 안그룹화 된 Case 문을 사용하여 전체의 % 계산하기
Region Number Percentage
West Coast 11675 0
Not West Coast 104620 0
을 제공합니다.
'문제가있는 줄'이라는 라벨이 붙은 코드는 다음과 같습니다.
With [Summed Region] AS
(
SELECT
[State Province],
CASE [State Province]
WHEN 'Oregon' THEN 'West Coast'
WHEN 'Washington' THEN 'West Coast'
WHEN 'California' THEN 'West Coast'
ELSE 'Not West Coast'
END AS 'Region'
FROM
[WideWorldImportersDW].[Dimension].[City]
)
SELECT
Region,
count(Region) AS Number,
---THE PROBLEM LINE IS BELOW THIS---
count(region)/(select count(*) FROM [WideWorldImportersDW].[Dimension].
[City]) AS Percentage
FROM
[Summed Region]
GROUP BY
Region
해당 줄의 문제점은 무엇입니까? 두 부분을 분리하면 각 부분이 올바른 번호를 반환합니다. 그러나 내가 다른 것을 나눌 때 나는 '0'을 얻는다.
감사합니다.
음, 덕분에 쉬웠다! 12 분 안에 질문에 답변하겠다고 표시 할 것입니다. – bbb0777
오, 예 ... 저는 실제로 창 기능으로 그 일을 해냈습니다. 분명히 사례 및 그룹을 결합하면 내 상상력의 한계에 도달했습니다. 다시 한 번 감사드립니다! 지나치게 복잡하지만, 1.0을 곱하는 대신 정수로 정수를 나누기 위해 CAST (count (*) AS FLOAT)를 할 수 있습니다. – bbb0777