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 39640 게시물 읽기
No. 39640
결과값을 다음행의 시작값으로
작성자
shitline
작성일
2012-09-14 05:51ⓒ
2012-09-14 23:43ⓜ
조회수
4,552

안녕하세요?

제가 구현하고자 하는 것은  아래와 같습니다

START_TIME                       ENDTIME                   시간차

2012/09/07 08:00:01              NULL                        2시간

 

여기서 START_TIME 에 시간차를 더하서

START_TIME                             ENDTIME                          시간차

2012/09/07 08:00:01              2012/09/07 10:00:01        2시간

 

다음행에 START_TIME에

START_TIME                                 ENDTIME                   시간차

 2012/09/07 10:00:01             2012/09/07 13:00:01       3시간

 

결과값

START_TIME                                ENDTIME                    시간차

2012/09/07 08:00:01             2012/09/07 10:00:01        2시간

2012/09/07 10:00:01             2012/09/07 13:00:01       3시간

 

즉, 시작시간에 시간차를 더하여 나온값을 다음행에 시작시간으로 삼아서 다시 시간차를 구하는...

이렇게 구현하고 싶은데..방법이 없네요..

도움 부탁드립니다..

수고하세요

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

 

주어진 것이 기준시작과 시간차목록이라는 전제가 있다면 아래처럼 구할 수 있습니다.

시간차라는 것이 어떤 기준에 의해 나오는지 모르겠으나 그것이 나타나는 순서는 정해져 있어야 합니다.

 

SELECT 기준시간 + SUM_직전시간차/24  START_TIME

      ,기준시간 + SUM_전체시간차/24  END_TIME

      ,시간차

FROM (

     SELECT A.*

           ,SUM(시간차) OVER (ORDER BY 순번) - 시간차 SUM_직전시간차

           ,SUM(시간차) OVER (ORDER BY 순번)          SUM_전체시간차

     FROM (

          SELECT 순번

                ,기준시간

                ,시간차

          FROM (

               SELECT TO_DATE('2012/09/07 08:00:01', 'YYYY/MM/DD HH24:MI:SS')  기준시간

               FROM DUAL

               ) A

              ,(

               SELECT  1 순번, 2 시간차 FROM DUAL

               UNION ALL

               SELECT  2 순번, 3 시간차 FROM DUAL

               UNION ALL

               SELECT  3 순번, 5 시간차 FROM DUAL

               ) B

          ) A

     ) A

;

 

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