두 날짜의 차이를 년월일 시분초로 표현하기

· 17년 전 · 4079
-- 년월일
DECLARE
        d1 DATE;
        d2 DATE;
        years NUMBER;
        months  NUMBER;
        days    NUMBER;
BEGIN
        d1 := to_date( '09-JUL-2007', 'DD-MON-YYYY' );
        d2 := to_date( '24-JUL-1995', 'DD-MON-YYYY' );

        years := trunc( months_between( d1, d2 ) / 12 );
        months := mod( trunc( months_between( d1, d2 ) ), 12 );
        days := d1 - add_months(d2,trunc( months_between( d1, d2 ) ));

        dbms_output.put_line( 'years = ' || years);
        dbms_output.put_line( 'months = ' || months);
        dbms_output.put_line( 'days = ' || days);
END;
/


<결과>
years = 11
months = 11
days = 15




-- 년월일시분초
DECLARE
        d1 DATE;
        d2 DATE;
        years NUMBER;
        months  NUMBER;
        days    NUMBER;
        hours NUMBER;
        minutes NUMBER;
        seconds NUMBER;
       
BEGIN
        d1 := to_date( '09-JUL-2007 23:10:43', 'DD-MON-YYYY HH24:MI:SS' );
        d2 := to_date( '24-JUL-1995 10:09:40', 'DD-MON-YYYY HH24:MI:SS' );

        years := trunc( months_between( d1, d2 ) / 12 );
        months := mod( trunc( months_between( d1, d2 ) ), 12 );
        days := trunc(d1 - add_months(d2,trunc( months_between( d1, d2 ) )));
        hours := trunc( mod( (d1-d2)*24, 24 ) );
        minutes := trunc( mod( (d1-d2)*24*60, 60 ) );
        seconds := trunc( mod( (d1-d2)*24*60*60, 60 ) );

        dbms_output.put_line( 'years = ' || years);
        dbms_output.put_line( 'months = ' || months);
        dbms_output.put_line( 'days = ' || days);
        dbms_output.put_line( 'hours = ' || hours);
        dbms_output.put_line( 'minutes = ' || minutes);
        dbms_output.put_line( 'seconds = ' || seconds);
       
END;
/


<결과>
years = 11
months = 11
days = 15
hours = 13
minutes = 1
seconds = 3
[이 게시물은 관리자님에 의해 2011-10-31 16:47:36 Oracle에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
17년 전 조회 1,551
17년 전 조회 1,446
17년 전 조회 1,552
17년 전 조회 2,733
17년 전 조회 4,529
17년 전 조회 1,491
17년 전 조회 4,249
17년 전 조회 4,416
17년 전 조회 1,538
17년 전 조회 2,503
17년 전 조회 1,941
17년 전 조회 3,545
17년 전 조회 1,680
17년 전 조회 3,936
17년 전 조회 3,731
17년 전 조회 2,902
17년 전 조회 3,263
17년 전 조회 2,970
17년 전 조회 2,275
17년 전 조회 3,629
17년 전 조회 2,978
17년 전 조회 3,849
17년 전 조회 1,482
17년 전 조회 2,579
17년 전 조회 1,651
17년 전 조회 1,510
17년 전 조회 1,393
17년 전 조회 1,379
17년 전 조회 1,744
17년 전 조회 3,172
17년 전 조회 3,565
17년 전 조회 3,333
17년 전 조회 2,209
17년 전 조회 4,331
17년 전 조회 1,713
17년 전 조회 1,450
17년 전 조회 1,569
17년 전 조회 1,432
17년 전 조회 1,673
17년 전 조회 2,050
17년 전 조회 2,655
17년 전 조회 2,726
17년 전 조회 1,741
17년 전 조회 1,494
17년 전 조회 2,749
17년 전 조회 3,190
17년 전 조회 3,549
17년 전 조회 3,488
17년 전 조회 2,656
17년 전 조회 4,080
17년 전 조회 3,511
17년 전 조회 5,805
17년 전 조회 2,982
17년 전 조회 2,182
17년 전 조회 2,268
17년 전 조회 2,090
17년 전 조회 2,033
17년 전 조회 3,101
17년 전 조회 2,207
17년 전 조회 1,866
17년 전 조회 2,386
17년 전 조회 1,431
17년 전 조회 1,988
17년 전 조회 3,211
17년 전 조회 2,462
17년 전 조회 2,114
17년 전 조회 2,334
17년 전 조회 1,638
17년 전 조회 2,039
17년 전 조회 1,550
17년 전 조회 2,078
17년 전 조회 2,112
17년 전 조회 1,349
17년 전 조회 3,444
17년 전 조회 4,625
17년 전 조회 2,775
17년 전 조회 7,791
17년 전 조회 4,152
17년 전 조회 4,471
17년 전 조회 2,728
17년 전 조회 3,228
17년 전 조회 3,961
17년 전 조회 4,304
17년 전 조회 3,483
17년 전 조회 3,478
17년 전 조회 3,605
17년 전 조회 2,768
17년 전 조회 2,362
17년 전 조회 3,413
17년 전 조회 3,574
17년 전 조회 4,904
17년 전 조회 1,908
17년 전 조회 2,929
17년 전 조회 3,001
17년 전 조회 2,226
17년 전 조회 2,514
17년 전 조회 2,147
17년 전 조회 2,708
17년 전 조회 4,100
17년 전 조회 4,190