Background Image

FORUM

2012.12.13 01:53

시간계산 문제

조회 수 13485 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안녕하세요.

아래의 쿼리는 오라클에서 사용된 쿼리 입니다.

둘 날짜 사이의 시간을 계산 하려고 합니다.

예를들어 2012-08-03 00:00 ~ 2012-08-04 12:20 사이의 시간 계산 입니다.

아래의 쿼리를 돌리면 결과값으로 TT 의 결과값을 얻을 수 있습니다.

큐브리드로 전환을 하려고하는데 생각처럼 쉽지 않네요. 어떻게 해야할까요?

 

AA                                         BB                                          TT

------------------------------------------------------------------------------------------------

2012-08-04 오후 11:20:00    2012-08-03 오전 12:00:00    1일23시간19분

 

SELECT  aa, bb,
       (
           CASE WHEN trunc(aa-bb)>=0
                THEN trunc(aa-bb) || '일'
           END
       )
       ||
       (
           CASE WHEN trunc(mod((aa-bb),1)*24)>=0
                THEN trunc(mod((aa-bb),1)*24) || '시간'
           END
       )
       ||
       (
           CASE WHEN trunc(mod((aa-bb)*24,1)*60)>=0
                THEN trunc(mod((aa-bb)*24,1)*60) || '분'
           END
       ) AS TT
  FROM
       (SELECT to_date('201208030000' ,'YYYYMMDD HH24:MI:SS') AS bb FROM dual ) A ,
       (SELECT to_date('201208042320' ,'YYYYMMDD HH24:MI:SS') AS aa FROM dual ) B  

  • ?
    권호일 2012.12.13 19:31
    안녕하세요.
    질문 감사 드립니다.

    보아하니, 보내 주신 쿼리는 오라클 쿼리군요.

    큐브리드는 datetime - datetime 의 계산결과를 MILLISECOND로 처리합니다.

    따라서 millisecond를 일,시간, 분으로 계산하면 됩니다.

    여러가지 방법이 있겠지만, 
    쿼리가 복잡해 질 수 있을 것 같아서 대소비교 부분은 빼고,
    일단위 계산은 MILLISECOND를 일 단위로 변경하고,
    시간과 분단위 계산은 ADDDATE 함수를 사용하여 처리하였습니다.

    감사합니다.

    SELECT TO_NUMBER ( to_datetime('20120804232000' ,'YYYYMMDDHH24MISS') -to_datetime('20120803000000' ,'YYYYMMDDHH24MISS') ) /( 24*60*60*1000) ||'일 ' ||
          TO_CHAR (  
                             ADDDATE ( to_datetime( '00010101000000','YYYYMMDDHH24MISS' )
                                      ,INTERVAL  to_datetime('20120804232000' ,'YYYYMMDDHH24MISS')
                                               - to_datetime('20120803000000' ,'YYYYMMDDHH24MISS') 
                                        MILLISECOND  )

                    , 'hh24:mi:ss'  )  AS xx
    FROM db_root


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4444
1347 호스트 연결이 안됩니다. 3 file 미드소나 2013.01.01 7752
1346 & 등의 특수문자등이 변환되어 저장되는 경우 1 호랑이야옹 2012.12.28 10676
1345 데이터 볼륨 자동 추가 로그 생성 안됨 3 종이 2012.12.27 7675
1344 statdump 추가추가 질문입니다. 2 오니오니 2012.12.21 5628
1343 (1개의 댓글은 작성자가 썼습니다.)비주얼 베이직 큐브리드 연동후 동시에 여러 테이블 보는 방법문의 2 secret 강남우 2012.12.21 58
1342 c# 에서 개발 중인데 쿼리 처리속도가 느리네요(수정) 5 yak341 2012.12.20 22714
1341 혹시 큐브리드 매니져 기본글꼴을 고정폭으로 해주실 생각은 없으신가요... 1 안지민 2012.12.20 5767
1340 HA 구성 관련하여 문의 드립니다. 4 secret 장경수 2012.12.19 14
1339 oledbprovider 7 yak341 2012.12.18 6283
1338 상위버전에서 백업받은 파일을 하위버전에서 복원하는 방법? 1 보요 2012.12.14 9201
» 시간계산 문제 1 큐빅 2012.12.13 13485
1336 C-API 접속 관련 CUBRID 2008 R4.3 버전에서 변경사항이 있는지 질문입니다. 2 Psionic 2012.12.12 7399
1335 밑에 statdump 에 관해서 추가질문좀 할게요 4 오니오니 2012.12.11 5885
1334 큐브리드 성능 관련 (statdump) 관련해서 문의드립니다.추가로 환경변수또한 12 오니오니 2012.12.07 7192
1333 TimeStamp 관련 Select 오류 질문입니다 2 Psionic 2012.12.07 9372
1332 8.2.2 를 8.4.3으로 변경 시 응용 수정 부분 문의 1 freemir 2012.12.07 5735
1331 다중 브로커 사용 1 바람바람 2012.12.06 6306
1330 데이터베이스 교체 문제 (급함니다 ㅠㅠ) 1 skgm 2012.12.06 6120
1329 접속자의 아이피나 맥어드레스를 알아낼수 있는지요 3 유니콘 2012.12.05 10956
1328 데이터베이스명 최대 자리수 관련입니다. 3 종이 2012.12.04 6224
Board Pagination Prev 1 ... 128 129 130 131 132 133 134 135 136 137 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales