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 40686 게시물 읽기
No. 40686
날짜 범위 조인 문의드립니다.
작성자
김태경(cranes)
작성일
2015-01-22 01:14
조회수
6,647

안녕하세요.

 

통계를 내야 하는데 좀 헤깔려서 고수님들 도움을 얻고자 문의드립니다.

 

날짜 기준과 상세 두 테이블이 있는데

tm_mst 기준의 start_Date 와 end_Date 에 포함되는 tm_Dtl의 일자( st_Dt , ed_dt ) 에 대한 조인을 걸고 싶습니다.

 

일자가 겹치지는 않습니다.

 

감사합니다.

 

 

WITH tm_mst AS (

 

 

select TO_DATE('2014-11-10 04:15:00','YYYY-MM-DD HH24:MI:SS') START_DATE ,TO_DATE('2014-11-10 04:25:00','YYYY-MM-DD HH24:MI:SS') END_Date from dual union all

select TO_DATE('2014-11-10 06:00:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 06:34:00','YYYY-MM-DD HH24:MI:SS') from dual union all

select TO_DATE('2014-11-10 07:30:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 07:40:00','YYYY-MM-DD HH24:MI:SS') from dual union all

select TO_DATE('2014-11-10 00:50:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 00:57:00','YYYY-MM-DD HH24:MI:SS') from dual

 

 

)

 

SELECT * FROM tm_mst

 

WITH

tm_dtl AS (

 

select TO_DATE('2014-11-10 04:15:00','YYYY-MM-DD HH24:MI:SS') st_Dt ,TO_DATE('2014-11-10 04:17:00','YYYY-MM-DD HH24:MI:SS') ed_Dt from dual union ALL

select TO_DATE('2014-11-10 04:20:00','YYYY-MM-DD HH24:MI:SS') ,TO_DATE('2014-11-10 04:21:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

select TO_DATE('2014-11-10 04:23:00','YYYY-MM-DD HH24:MI:SS') ,TO_DATE('2014-11-10 04:24:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

 

 

select TO_DATE('2014-11-10 06:00:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 06:10:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

select TO_DATE('2014-11-10 06:11:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 06:11:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

select TO_DATE('2014-11-10 06:33:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 06:34:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

 

select TO_DATE('2014-11-10 07:30:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 07:31:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

select TO_DATE('2014-11-10 07:36:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 07:37:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

select TO_DATE('2014-11-10 07:38:40','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 07:40:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

 

 

 

select TO_DATE('2014-11-10 00:50:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 00:53:00','YYYY-MM-DD HH24:MI:SS') from dual union ALL

select TO_DATE('2014-11-10 00:54:00','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2014-11-10 00:55:00','YYYY-MM-DD HH24:MI:SS') from dual

 

)

 

SELECT * FROM tm_dtl

 

 

 

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

SELECT *
  FROM tm_mst m
     , tm_dtl d
-- 1. 완벽한 포함관계인 경우
 WHERE d.ed_dt <= m.end_date
   AND d.st_dt >= m.start_date
-- 2. 일부만 겹치는 자료가 존재할 수 있다면?(시작 종료 교차 비교)
 WHERE d.st_dt <= end_date
   AND d.ed_dt >= start_date
;

마농(manon94)님이 2015-01-22 10:28에 작성한 댓글입니다.

마농님 상세한 설명까지 너무 감사합니다.

 

즐겁고 행복한 하루 되세요.

 

김태경(cranes)님이 2015-01-22 12:56에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40689초보의 쿼리 질문 [1]
권사마
2015-01-22
6390
40688조언부탁드립니다. [2]
선이
2015-01-22
6528
40687근태 쿼리 문의 드립니다. [2]
초보
2015-01-22
7123
40686날짜 범위 조인 문의드립니다. [2]
김태경
2015-01-22
6647
40685질문드립니다! 테이블에 not null 제약 조건 삽입 에러.. [1]
지유현
2015-01-20
7198
40684select view error (ora-00990) [1]
정용석
2015-01-20
7318
40683특정합계단위의 그룹 생성 도움이 필요합니다 [5]
박용대
2015-01-20
7255
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다