질문드립니다.
첫번째 -------------------------------------------------------------------------------------
당월합계는 where 조건절에 월걸구 sum해서 잘 가져오는데
문제는 전월이랑 전년동월입니다.
그래서
select yymm,case when yymm = '전월' then 합계 else 0 end as 전월합계
,case when yymm = '당월' then 합계 else 0 end as 당월합계
from aaa
where yymm between '전월' and '당월'
요렇게 했는데 왜 전월 한쪽만 나오는지? 음....전월합계에 서브쿼리는 데이터수가 많아서 안되구,
between을 걸어사 해두 안되네요.
조건절에 하나의 년월을 입력받아서 '201107'을 입력받아서 '201106'의 합계와 '201007'의 합계를 구하구 싶은데
어떻게 효율적으로 구할수있을까요? 조인을 쓸려니 너무 길구 같은 쿼리 두번 돌리는거같아서요..
두번째 질문 ---------------------------------------------------------------------------------------------------------
마스터 테이블에 조직id들과 그조직의 상위id(uppid)들이 있습니다.
대략 5단계정도 되구요.. 최상위(1)-하위(2)-하위(3)-하위(4)-하위(5) 계층구조이죠.
상위 2단계를 기준으로 총실적을 구하려구 합니다.
문제는 총실적이 나와있는 테이블에 최하위단인 5단계이구 상위id들이 없습니다. 하위id뿐입니다.
이 총실적을 가진 최하위5단계 id를 좌측의 상위2단계와 조인을 걸려구 하는데 셀프조인을 거니 너무 복잡한거같구,
start with connected by 는 잘 모르겠네요..ㅠ.ㅠ
원하는건 상위 몇단계까지 나오게 쿼리를 짜고싶습니다.
상위 상위 상위
id01 a b c
id02 z b e
id03 d w q
머 대략 이정도입니다. 예를 들면 국가 - 권역(경기도) - 시도(구리시) - 동(교문동) 이런식으로요...
설명이 많이 부족하네요..
부탁드리겠습니다.
|