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

· 17년 전 · 4001
-- 년월일
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,470
17년 전 조회 1,365
17년 전 조회 1,462
17년 전 조회 2,651
17년 전 조회 4,458
17년 전 조회 1,412
17년 전 조회 4,178
17년 전 조회 4,334
17년 전 조회 1,440
17년 전 조회 2,414
17년 전 조회 1,864
17년 전 조회 3,455
17년 전 조회 1,596
17년 전 조회 3,845
17년 전 조회 3,654
17년 전 조회 2,818
17년 전 조회 3,172
17년 전 조회 2,884
17년 전 조회 2,190
17년 전 조회 3,549
17년 전 조회 2,885
17년 전 조회 3,767
17년 전 조회 1,373
17년 전 조회 2,493
17년 전 조회 1,555
17년 전 조회 1,414
17년 전 조회 1,297
17년 전 조회 1,294
17년 전 조회 1,659
17년 전 조회 3,104
17년 전 조회 3,488
17년 전 조회 3,249
17년 전 조회 2,135
17년 전 조회 4,242
17년 전 조회 1,635
17년 전 조회 1,355
17년 전 조회 1,471
17년 전 조회 1,346
17년 전 조회 1,586
17년 전 조회 1,963
17년 전 조회 2,575
17년 전 조회 2,648
17년 전 조회 1,660
17년 전 조회 1,408
17년 전 조회 2,671
17년 전 조회 3,102
17년 전 조회 3,469
17년 전 조회 3,418
17년 전 조회 2,573
17년 전 조회 4,002
17년 전 조회 3,422
17년 전 조회 5,734
17년 전 조회 2,902
17년 전 조회 2,110
17년 전 조회 2,182
17년 전 조회 2,014
17년 전 조회 1,962
17년 전 조회 3,026
17년 전 조회 2,132
17년 전 조회 1,803
17년 전 조회 2,314
17년 전 조회 1,358
17년 전 조회 1,905
17년 전 조회 3,119
17년 전 조회 2,371
17년 전 조회 2,036
17년 전 조회 2,274
17년 전 조회 1,560
17년 전 조회 1,953
17년 전 조회 1,475
17년 전 조회 2,003
17년 전 조회 2,027
17년 전 조회 1,274
17년 전 조회 3,381
17년 전 조회 4,550
17년 전 조회 2,713
17년 전 조회 7,716
17년 전 조회 4,076
17년 전 조회 4,395
17년 전 조회 2,660
17년 전 조회 3,148
17년 전 조회 3,885
17년 전 조회 4,232
17년 전 조회 3,403
17년 전 조회 3,380
17년 전 조회 3,539
17년 전 조회 2,711
17년 전 조회 2,297
17년 전 조회 3,337
17년 전 조회 3,502
17년 전 조회 4,836
17년 전 조회 1,818
17년 전 조회 2,852
17년 전 조회 2,928
17년 전 조회 2,145
17년 전 조회 2,434
17년 전 조회 2,078
17년 전 조회 2,619
17년 전 조회 4,018
17년 전 조회 4,120