database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 39639 게시물 읽기
No. 39639
DOL님 다시 한번 도움을 요청합니다.
작성자
논어
작성일
2012-09-13 18:14ⓒ
2012-09-13 18:16ⓜ
조회수
4,342

아래의 이력쿼리 답변은 정말 감사합니다.

한가지 질문이 더 있습니다.

 

위의 쿼리에서 날짜로 조인 을 하였는데요.

이력이 포함되지 않은 날짜를 조회할 경우에도 이력을 참조하여 값을 구하고자 할 경우에는 어떻게 해야 할까요?

마스터 테이블
날짜 항목
2012-05-01 A1
2012-05-02 A1
2012-05-03 A1
2012-05-04 A1
2012-05-05 A1
2012-05-06 A1

이력 테이블
날짜 항목 변경타입
2012-01-01 A1 PPP
2012-01-03 A1 QQQ
2012-01-06 A1 ZZZ


구하고자 하는 결과는 다음과 같습니다.

날짜 항목 타입
2012-05-01 A1 ZZZ
2012-05-02 A1 ZZZ
2012-05-03 A1 ZZZ
2012-05-04 A1 ZZZ
2012-05-05 A1 ZZZ
2012-05-06 A1 ZZZ

퍽션을 사용하지 않고 구할 수 있는 방법은 없을까요?

다시 한번 정말 감사합니다.

 

이 글에 대한 댓글이 총 1건 있습니다.

이런걸 원하신건지..

아래쿼리는 대량이면 속도는 느려질수 있습니다.

WITH MAST AS
(
 SELECT '2012-01-01' DT, 'A1' CD FROM DUAL UNION ALL
 SELECT '2012-01-02' DT, 'A1' CD FROM DUAL UNION ALL
-- SELECT '2012-01-03' DT, 'A1' CD FROM DUAL UNION ALL
 SELECT '2012-01-04' DT, 'A1' CD FROM DUAL UNION ALL
 SELECT '2012-01-05' DT, 'A1' CD FROM DUAL UNION ALL
 SELECT '2012-01-06' DT, 'A1' CD FROM DUAL UNION ALL
 SELECT '2012-05-05' DT, 'A1' CD FROM DUAL UNION ALL
 SELECT '2012-05-06' DT, 'A1' CD FROM DUAL
), HIST AS
(
 SELECT '2012-01-01' DT,  'A1' CD, 'PPP' TYPE FROM DUAL UNION ALL
 SELECT '2012-01-03' DT,  'A1' CD, 'QQQ' TYPE FROM DUAL UNION ALL
 SELECT '2012-01-06' DT,  'A1' CD, 'ZZZ' TYPE FROM DUAL
)
SELECT  M.DT
       ,M.CD
       ,(SELECT SUBSTR(MAX(DT||TYPE),11) TYPE FROM HIST H WHERE M.CD = H.CD AND M.DT >= H.DT)
FROM   MAST M

DOL님이 2012-09-14 14:04에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
39642복구가 가능한가요??? [1]
넘버텐
2012-09-17
4407
39641[급합니다] 기준일에 가까운 날짜구하기 [2]
머리아파
2012-09-16
7165
39640결과값을 다음행의 시작값으로 [1]
shitline
2012-09-14
4551
39639DOL님 다시 한번 도움을 요청합니다. [1]
논어
2012-09-13
4342
39638카운터 구할때.. [3]
궁금
2012-09-13
4523
39637DB속도가 느려지고 ALRT LOG에 이렇게 자꾸보이네요 도와주세요
말하자
2012-09-12
4978
39636한 row로 select하기 도와주세요 ㅠㅠ [1]
알티
2012-09-11
4613
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다