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

· 17년 전 · 4127
-- 년월일
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,601
17년 전 조회 1,492
17년 전 조회 1,595
17년 전 조회 2,787
17년 전 조회 4,599
17년 전 조회 1,537
17년 전 조회 4,297
17년 전 조회 4,471
17년 전 조회 1,585
17년 전 조회 2,560
17년 전 조회 1,993
17년 전 조회 3,599
17년 전 조회 1,739
17년 전 조회 4,004
17년 전 조회 3,778
17년 전 조회 2,958
17년 전 조회 3,328
17년 전 조회 3,030
17년 전 조회 2,339
17년 전 조회 3,685
17년 전 조회 3,023
17년 전 조회 3,901
17년 전 조회 1,516
17년 전 조회 2,633
17년 전 조회 1,703
17년 전 조회 1,567
17년 전 조회 1,443
17년 전 조회 1,421
17년 전 조회 1,791
17년 전 조회 3,242
17년 전 조회 3,622
17년 전 조회 3,385
17년 전 조회 2,265
17년 전 조회 4,382
17년 전 조회 1,774
17년 전 조회 1,510
17년 전 조회 1,626
17년 전 조회 1,479
17년 전 조회 1,728
17년 전 조회 2,107
17년 전 조회 2,699
17년 전 조회 2,782
17년 전 조회 1,793
17년 전 조회 1,554
17년 전 조회 2,795
17년 전 조회 3,239
17년 전 조회 3,596
17년 전 조회 3,533
17년 전 조회 2,724
17년 전 조회 4,128
17년 전 조회 3,557
17년 전 조회 5,865
17년 전 조회 3,025
17년 전 조회 2,227
17년 전 조회 2,310
17년 전 조회 2,146
17년 전 조회 2,093
17년 전 조회 3,149
17년 전 조회 2,261
17년 전 조회 1,916
17년 전 조회 2,447
17년 전 조회 1,486
17년 전 조회 2,051
17년 전 조회 3,279
17년 전 조회 2,516
17년 전 조회 2,161
17년 전 조회 2,384
17년 전 조회 1,704
17년 전 조회 2,099
17년 전 조회 1,597
17년 전 조회 2,130
17년 전 조회 2,163
17년 전 조회 1,407
17년 전 조회 3,500
17년 전 조회 4,679
17년 전 조회 2,829
17년 전 조회 7,843
17년 전 조회 4,203
17년 전 조회 4,525
17년 전 조회 2,777
17년 전 조회 3,283
17년 전 조회 4,009
17년 전 조회 4,351
17년 전 조회 3,538
17년 전 조회 3,536
17년 전 조회 3,668
17년 전 조회 2,809
17년 전 조회 2,423
17년 전 조회 3,467
17년 전 조회 3,639
17년 전 조회 4,954
17년 전 조회 1,959
17년 전 조회 2,973
17년 전 조회 3,056
17년 전 조회 2,283
17년 전 조회 2,564
17년 전 조회 2,198
17년 전 조회 2,757
17년 전 조회 4,162
17년 전 조회 4,236