그룹별 카운트 쿼리 질문좀요 ;; 0 4 1,211

by 개꿈 [SQL Query] [2015.01.22 09:17:58]


WITH T AS(
SELECT '농구' 종목, '시카고' 팀, '마이클 조던' 선수  FROM DUAL
UNION ALL SELECT '농구' a, '보스턴' 팀, '코비' 선수  FROM DUAL
UNION ALL SELECT '농구' a, '보스턴' 팀, '샤크' 선수  FROM DUAL
UNION ALL SELECT '축구' a, '한국' 팀, '박지성' 선수  FROM DUAL
UNION ALL SELECT '축구' a, '한국' 팀, '차두리' 선수  FROM DUAL
UNION ALL SELECT '축구' a, '일본' 팀, '혼다' 선수   FROM DUAL
UNION ALL SELECT '축구' a, '일본' 팀, '마치다' 선수  FROM DUAL
UNION ALL SELECT '야구' a, '기아' 팀, '박찬호' 선수  FROM DUAL
UNION ALL SELECT '야구' a, '삼성' 팀, '류현진' 선수  FROM DUAL
UNION ALL SELECT '야구' a, '한화' 팀, '강정호' 선수  FROM DUAL
UNION ALL SELECT '야구' a, '한화' 팀, '이종욱' 선수  FROM DUAL
UNION ALL SELECT '야구' a, '한화' 팀, '박한이' 선수  FROM DUAL
)
SELECT * FROM t

결과값 :    

종목           팀          선수

농구        시카고    마이클 조던
농구        보스턴    코비
농구        보스턴    샤크
축구        한국    박지성
축구        한국    차두리
축구        일본    혼다
축구        일본    마치다
야구        기아    박찬호
야구        삼성    류현진
야구        한화    강정호
야구        한화    이종욱
야구        한화    박한이

 

원하는값 : 

종목            팀        팀카운트     선수카운트

농구        시카고           2                 1

농구        보스턴           2                 2

축구        한국              2                 2

축구        일본              2                 2

야구        기아              3                 1

야구        삼성              3                 1

야구        한화              3                 3

 

부탁드립니다 ㅠㅠ

by DarkBee [2015.01.22 09:48:34]
SELECT 종목
     , 팀
     , COUNT ( 팀   )
     , COUNT ( 선수 )
  FROM t
 GROUP BY 종목
        , 팀

 


by 개꿈 [2015.01.22 10:12:04]

결과값하고 다른데요? 

각 종목에 팀 카운트가 동일해야합니다. 

농구에는 팀이 2개이니 2로 나와야겠죠

그리고 그 팀안에 선수 카운트구요.


by DarkBee [2015.01.22 10:14:20]
SELECT 종목
     , 팀
     , COUNT ( 팀   ) OVER ( PARTITION BY 종목 )
     , COUNT ( 선수 )
  FROM t
 GROUP BY 종목
        , 팀

 


by 마농 [2015.01.22 10:18:53]
SELECT 종목, 팀
     , COUNT(*) OVER(PARTITION BY 종목) 팀카운트
     , COUNT(*) 선수카운트
  FROM t
 GROUP BY 종목, 팀
 ORDER BY 종목, 팀
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입