다중 쿼리 질문 (빠른 답변 부탁드려요 ㅠㅠ) 0 4 1,212

by 바카니 [SQL Query] 쿼리 Query Tibero [2020.09.28 10:43:33]


캡처.PNG (1,480,148Bytes)

안녕하세요.

클릭해주셔서 감사합니다.

다중 쿼리 질문드립니다.

 

캡쳐의 MEDATE 기준으로 하단에 파란색으로 동그라미 친 부분을 PE_COUNT 항목으로 조회하고 싶습니다.

이 경우 어떻게 짜야할까요?

감사드립니다.

by 마농 [2020.09.28 10:50:05]
SELECT pedate
     , SUM(main_view) main_view
     , SUM(page_view) page_view
  FROM (SELECT access_date     pedate
             , COUNT(page_url) main_view
             , 0               page_view
          FROM main_enter
         GROUP BY access_date
         UNION ALL
        SELECT access_date     pedate
             , 0               main_view
             , COUNT(page_url) page_view
          FROM page_enter
         GROUP BY access_date
        ) a
 GROUP BY pedate
;

 


by 바카니 [2020.09.28 10:53:21]

마농님 항상 감사드립니다!!


by 바카니 [2020.09.28 11:05:10]

이런 유형의 경우 union all 말고 혹시 다르게 짜는 법도 있을까요?


by 마농 [2020.09.28 11:19:32]
-- 일자가 정확하게 일치한다고 가정, 이너조인 --
SELECT a.pedate
     , a.main_view
     , b.page_view
  FROM (SELECT access_date     pedate
             , COUNT(page_url) main_view
          FROM main_enter
         GROUP BY access_date
        ) a
     , (SELECT access_date     pedate
             , COUNT(page_url) page_view
          FROM page_enter
         GROUP BY access_date
        ) b
 WHERE a.pedate = b.pedate
;
-- 일자가 정확하게 일치하지 않는 경우, 풀아우터조인 --
SELECT NVL(a.pedate, b.pedate) pedate
     , NVL(a.main_view, 0) main_view
     , NVL(b.page_view, 0) page_view
  FROM (SELECT access_date     pedate
             , COUNT(page_url) main_view
          FROM main_enter
         GROUP BY access_date
        ) a
  FULL OUTER JOIN
       (SELECT access_date     pedate
             , COUNT(page_url) page_view
          FROM page_enter
         GROUP BY access_date
        ) b
    ON a.pedate = b.pedate
;

 

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