시간관련 outer 조인 질문입니다. 0 2 1,180

by KYoung 시간 outer 조인 조인 [2015.04.21 10:17:43]


A  /  B  /  C 
00  / 700  / 700 
03 /  800  / 800 

이런데이터를 

00  / 700  / 700 
01  /  0  /  0 
02  /  0  /  0 
03  / 800  / 800 
04  /  0  /  0 
05  /  0  /  0 


이런식으로 데이터가 없을때 outer 조인을 하려고하는데요 
00 ~ 23 의 연속된 숫자를 조인하는 방법이 있을까요? 
WITH나 UNION ALL, 코드값사용 정도 생각나는데요
WITH, UNION ALL, 코드 말고 조인 방법이있는지 질문드립니다.

DB는 Oracle 입니다.

by DarkBee [2015.04.21 10:24:49]

WITH t AS
(
   SELECT LPAD ( LEVEL, 2, '0' ) lv 
     FROM DUAL 
  CONNECT BY 24 >= LEVEL
)
SELECT b.lv
     , NVL ( a.b, 0 )
     , NVL ( a.c, 0 )
  FROM table a
     , t     b
 WHERE a.time (+) = b.lv

 


by KYoung [2015.04.21 11:00:31]

감사합니다.

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