고정쿼리 0 4 734

by 소이찡 [SQL Query] [2019.03.22 11:18:31]


안녕하세요

a테이블에 코드값과 구분값을 구룹핑해서 소계를 하려고합니다 

a table

코드   구분   값  

123      남자      1

123      여자      2

124      여자        3

125      남자      3

 

 

원하는

결과값

코드   구분  count

123   남자   1

123   여자  2

    계            3

124  남자 0

124 여자 3

        계  4

125  남자 3

125  여자 0

계    4

그런데 a 테이블에는 코드값 123에  남자만존재해서 여자가 안나오거든요

항상 코드값 나오고 고정적으로 남자 여자가 나오게끔 하고싶믄데 

두줄로요 부탁드려요

 

아 남자여자 값은 코드값에 둘다존재하기도하고 하나만존재하기도 합니다

그냥 코드값이 존재하면  고정적으로 다 나오게 하고싶어서요

by 우리집아찌 [2019.03.22 11:23:33]

공통테이블로 남자/여자 가 존재하나요?

다른코드에서는 남자/여자 존재하나요?

 


by 임상준 [2019.03.22 13:03:33]

남자/여자 값 2개가 들어있는 테이블이랑 아우터조인으로 하시면 될 것 같아요.


by 마농 [2019.03.22 13:24:04]
WITH code_t AS
(
SELECT '남자' gb FROM dual
UNION ALL SELECT '여자' FROM dual
)
, data_t AS
(
SELECT 122 cd, '남자' gb FROM dual
UNION ALL SELECT 122, '여자' FROM dual
UNION ALL SELECT 123, '남자' FROM dual
UNION ALL SELECT 123, '남자' FROM dual
UNION ALL SELECT 124, '여자' FROM dual
)
SELECT d.cd
     , NVL(c.gb, '계') gb
     , COUNT(d.gb) cnt
  FROM code_t c
  LEFT OUTER JOIN data_t d
  PARTITION BY (d.cd)
    ON c.gb = d.gb
 GROUP BY d.cd, ROLLUP(c.gb)
;

 


by 소이찡 [2019.03.22 14:00:03]

감사합니다!!!

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