그룹화 내 백분율 계산

MISNole

내 테이블에서 남성과 여성의 비율을 계산하려고합니다. 지금까지 내 테이블에서 여성, 남성 및 비공개의 총 수를 계산했습니다. 하지만이 합계에서 여성과 남성의 비율을 계산하고 싶습니다.

내 초기 쿼리는 다음과 같습니다.

SELECT   [description] AS [Gender] ,
     COUNT(C.id) AS [GenderCount]
FROM     dbo.Customers AS [C]
     INNER JOIN dbo.GenderTypes AS [GT] ON C.genderTypeID = GT.id
WHERE    C.customerStatusTypeID = 'O'
GROUP BY GT.[description]

결과 :

Gender      GenderCount
Female      60620
Male        394165
Undisclosed 630007

case 문을 사용하여 백분율을 계산하기 위해 CTE에서 쿼리를 래핑하려고 시도했지만 여성, 남성 및 비공개가 모두 100 %이기 때문에 분명히 뭔가 누락되었습니다.

;WITH Gender (Gender, GenderCount)
AS 
(
SELECT   [description] AS [Gender] ,
     COUNT(C.id) AS [GenderCount]
FROM     dbo.Customers AS [C]
     INNER JOIN dbo.GenderTypes AS [GT] ON C.genderTypeID = GT.id
WHERE    C.customerStatusTypeID = 'O'
GROUP BY GT.[description] )
SELECT Gender.Gender, Gender.GenderCount,
CASE WHEN
Gender.Gender = 'Female' THEN Gender.GenderCount / SUM(Gender.GenderCount) * 100
WHEN Gender.Gender = 'Male' THEN Gender.GenderCount / SUM(Gender.GenderCount) * 100
ELSE Gender.GenderCount / SUM(Gender.GenderCount) * 100
END AS [%Gender]
FROM Gender
GROUP BY Gender.Gender, Gender.GenderCount;

결과는 다음과 같습니다.

Gender       GenderCount    %Gender
Female       60620          100
Male         394165         100
Undisclosed  630007         100

내 수학 / TSQL이 올바른 경우 결과는 다음과 같습니다.

Female: 5.59%
Male: 36.34%
Undisclosed: 58.08%

누구든지 올바른 결과를 얻기 위해 내가 놓친 것에 대해 나를 도울 수 있습니까?

TriV

다음 쿼리를 사용할 수 있습니다.

DECLARE @SampleData AS TABLE
(
    Gender varchar(20),
    GenderCount int
)

INSERT INTO @SampleData
VALUES
('Female', 60620),
('Male', 394165),
('Undisclosed', 630007)

SELECT  *, 
       CAST(CAST(sd.GenderCount AS decimal)/sum(sd.GenderCount) over() *100 as decimal(10,2)) AS [%Gender] AS [%Gender]
FROM @SampleData sd

보고

Gender  GenderCount %Gender
Female  60620   5.59
Male    394165  36.34
Undisclosed 630007  58.08

다음과 같이 쿼리를 작성할 수 있습니다.

;WITH temp as (
SELECT   [description] AS [Gender] ,
         COUNT(C.id) AS [GenderCount]
FROM     dbo.Customers AS [C]
     INNER JOIN dbo.GenderTypes AS [GT] ON C.genderTypeID = GT.id
WHERE    C.customerStatusTypeID = 'O'
GROUP BY GT.[description]
)
SELECT  *, 
        CAST(CAST(t.GenderCount AS decimal)/sum(t.GenderCount) over() *100 as decimal(10,2)) AS [%Gender]
FROM temp t

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Pandas에서 그룹 내 열의 백분율 변화 계산

분류에서Dev

mongodb 집계 파이프 라인의 그룹 내 백분율 계산

분류에서Dev

그룹에 대한 백분율 계산

분류에서Dev

그룹화 변수를 기반으로 백분율 계산

분류에서Dev

MySQL : 백분율 계산, 백분율이 1 % 미만이면 그룹화하고 레이블 변경

분류에서Dev

여러 열, 계산 빈도 및 백분율을 기준으로 그룹화

분류에서Dev

그룹당 결과의 백분율 계산

분류에서Dev

R dplyr 계산 그룹 및 열 백분율

분류에서Dev

mysql은 다른 그룹의 백분율을 계산합니다.

분류에서Dev

소수 1 자리까지 그룹 백분율 계산-SQL

분류에서Dev

팬더-그룹 크기의 백분율 계산

분류에서Dev

백분율 계산

분류에서Dev

오라클 내에서 백분율 계산

분류에서Dev

배터리 내구성 백분율 계산 방법-Android

분류에서Dev

여러 범위 내에서 중복 값의 백분율 계산

분류에서Dev

다른 열로 그룹화 된 여러 열의 True 또는 False 백분율 계산

분류에서Dev

R의 그룹화 된 데이터 프레임에서 성별 백분율 계산

분류에서Dev

r "tables"패키지를 사용한 중첩 테이블, 열 내 하위 그룹 합계, 빈도 및 백분율

분류에서Dev

그룹 내 값 계산

분류에서Dev

PostgreSQL : 테이블을 녹이고 다른 그룹에 대한 백분율 계산

분류에서Dev

PostgreSQL에서 그룹에 대한 지표의 백분율 변경 계산

분류에서Dev

다른 그룹에 대한 고정 연도의 백분율 변경 계산

분류에서Dev

쿼리에서 항목 그룹의 백분율을 계산하는 SQL에 Linq

분류에서Dev

Pandas 그룹화-다른 열을 기준으로 그룹화 된 합계의 백분율로 값

분류에서Dev

그룹화 된 값당 개수를 표시하면서 geom_bar에서 그룹화 된 값의 백분율 값을 계산합니다.

분류에서Dev

백분율 변화 계산 (다중 변수) Pandas

분류에서Dev

SQL을 사용하여 "활성화"백분율 계산

분류에서Dev

C 프로그램에 남아있는 백분율 계산

분류에서Dev

백분율 그리드 레이아웃 셀 너비 계산

Related 관련 기사

  1. 1

    Pandas에서 그룹 내 열의 백분율 변화 계산

  2. 2

    mongodb 집계 파이프 라인의 그룹 내 백분율 계산

  3. 3

    그룹에 대한 백분율 계산

  4. 4

    그룹화 변수를 기반으로 백분율 계산

  5. 5

    MySQL : 백분율 계산, 백분율이 1 % 미만이면 그룹화하고 레이블 변경

  6. 6

    여러 열, 계산 빈도 및 백분율을 기준으로 그룹화

  7. 7

    그룹당 결과의 백분율 계산

  8. 8

    R dplyr 계산 그룹 및 열 백분율

  9. 9

    mysql은 다른 그룹의 백분율을 계산합니다.

  10. 10

    소수 1 자리까지 그룹 백분율 계산-SQL

  11. 11

    팬더-그룹 크기의 백분율 계산

  12. 12

    백분율 계산

  13. 13

    오라클 내에서 백분율 계산

  14. 14

    배터리 내구성 백분율 계산 방법-Android

  15. 15

    여러 범위 내에서 중복 값의 백분율 계산

  16. 16

    다른 열로 그룹화 된 여러 열의 True 또는 False 백분율 계산

  17. 17

    R의 그룹화 된 데이터 프레임에서 성별 백분율 계산

  18. 18

    r "tables"패키지를 사용한 중첩 테이블, 열 내 하위 그룹 합계, 빈도 및 백분율

  19. 19

    그룹 내 값 계산

  20. 20

    PostgreSQL : 테이블을 녹이고 다른 그룹에 대한 백분율 계산

  21. 21

    PostgreSQL에서 그룹에 대한 지표의 백분율 변경 계산

  22. 22

    다른 그룹에 대한 고정 연도의 백분율 변경 계산

  23. 23

    쿼리에서 항목 그룹의 백분율을 계산하는 SQL에 Linq

  24. 24

    Pandas 그룹화-다른 열을 기준으로 그룹화 된 합계의 백분율로 값

  25. 25

    그룹화 된 값당 개수를 표시하면서 geom_bar에서 그룹화 된 값의 백분율 값을 계산합니다.

  26. 26

    백분율 변화 계산 (다중 변수) Pandas

  27. 27

    SQL을 사용하여 "활성화"백분율 계산

  28. 28

    C 프로그램에 남아있는 백분율 계산

  29. 29

    백분율 그리드 레이아웃 셀 너비 계산

뜨겁다태그

보관