오라클 쿼리 문의드립니다 ㅠ 0 2 467

by show45 [SQL Query] 쿼리 [2018.10.11 13:50:23]


안녕하세요 쿼리를 뽑아야되는데 어떻게 해야될지 몰라 글 남깁니다..ㅜㅜ

제가 추출해야되는건

데이터가 이런식입니다

사용처 |  금액

 CGV   |   10,000

 CGV   |   10.000

 b       |     1,000

 B       |    5,000

 

이런식으로 있다면

데이터 건수와 금액을 제일 많이 사용한 사용처를 추출해야되는데 방법을 모르겠습니다..ㅠㅠ

결과값이

CGV 와 4건으로 나와야됩니다..

어떻게 추출하면될까요?

 

by 우리집아찌 [2018.10.11 14:03:11]

원본 데이터 좀 올려주세요.

DBMS 어떤거 사용하시는지도 올려주세요.


by 마농 [2018.10.11 15:42:38]
WITH t AS
(
SELECT 'CGV' cd, 10000 amt FROM dual
UNION ALL SELECT 'CGV', 10000 FROM dual
UNION ALL SELECT 'b'  ,  1000 FROM dual
UNION ALL SELECT 'B'  ,  5000 FROM dual
--UNION ALL SELECT 'XXX', 20000 FROM dual
)
SELECT LISTAGG(DECODE(rk, 1, cd), ',') WITHIN GROUP(ORDER BY cd) rank_1_cd_list
     , SUM(cnt) tot_cnt
  FROM (SELECT cd
             , SUM(amt) amt
             , COUNT(*) cnt
             , RANK() OVER(ORDER BY SUM(amt) DESC) rk
          FROM t
         GROUP BY cd
        )
;

 

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