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

· 17년 전 · 4067
-- 년월일
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,544
17년 전 조회 1,430
17년 전 조회 1,537
17년 전 조회 2,723
17년 전 조회 4,514
17년 전 조회 1,483
17년 전 조회 4,238
17년 전 조회 4,400
17년 전 조회 1,529
17년 전 조회 2,485
17년 전 조회 1,929
17년 전 조회 3,531
17년 전 조회 1,672
17년 전 조회 3,918
17년 전 조회 3,721
17년 전 조회 2,891
17년 전 조회 3,253
17년 전 조회 2,956
17년 전 조회 2,256
17년 전 조회 3,616
17년 전 조회 2,962
17년 전 조회 3,837
17년 전 조회 1,471
17년 전 조회 2,567
17년 전 조회 1,638
17년 전 조회 1,496
17년 전 조회 1,380
17년 전 조회 1,365
17년 전 조회 1,735
17년 전 조회 3,159
17년 전 조회 3,558
17년 전 조회 3,317
17년 전 조회 2,192
17년 전 조회 4,322
17년 전 조회 1,700
17년 전 조회 1,441
17년 전 조회 1,560
17년 전 조회 1,422
17년 전 조회 1,663
17년 전 조회 2,038
17년 전 조회 2,645
17년 전 조회 2,716
17년 전 조회 1,735
17년 전 조회 1,480
17년 전 조회 2,737
17년 전 조회 3,176
17년 전 조회 3,540
17년 전 조회 3,480
17년 전 조회 2,642
17년 전 조회 4,068
17년 전 조회 3,502
17년 전 조회 5,796
17년 전 조회 2,971
17년 전 조회 2,174
17년 전 조회 2,257
17년 전 조회 2,083
17년 전 조회 2,026
17년 전 조회 3,088
17년 전 조회 2,200
17년 전 조회 1,860
17년 전 조회 2,378
17년 전 조회 1,420
17년 전 조회 1,982
17년 전 조회 3,191
17년 전 조회 2,444
17년 전 조회 2,094
17년 전 조회 2,326
17년 전 조회 1,628
17년 전 조회 2,028
17년 전 조회 1,541
17년 전 조회 2,075
17년 전 조회 2,104
17년 전 조회 1,338
17년 전 조회 3,438
17년 전 조회 4,619
17년 전 조회 2,766
17년 전 조회 7,783
17년 전 조회 4,143
17년 전 조회 4,466
17년 전 조회 2,715
17년 전 조회 3,213
17년 전 조회 3,951
17년 전 조회 4,296
17년 전 조회 3,471
17년 전 조회 3,468
17년 전 조회 3,594
17년 전 조회 2,763
17년 전 조회 2,354
17년 전 조회 3,400
17년 전 조회 3,563
17년 전 조회 4,890
17년 전 조회 1,896
17년 전 조회 2,921
17년 전 조회 2,990
17년 전 조회 2,220
17년 전 조회 2,499
17년 전 조회 2,135
17년 전 조회 2,698
17년 전 조회 4,088
17년 전 조회 4,175