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

· 17년 전 · 3795
-- 년월일
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,293
17년 전 조회 1,176
17년 전 조회 1,291
17년 전 조회 2,445
17년 전 조회 4,243
17년 전 조회 1,237
17년 전 조회 3,990
17년 전 조회 4,141
17년 전 조회 1,263
17년 전 조회 2,228
17년 전 조회 1,669
17년 전 조회 3,261
17년 전 조회 1,407
17년 전 조회 3,646
17년 전 조회 3,443
17년 전 조회 2,610
17년 전 조회 2,981
17년 전 조회 2,673
17년 전 조회 1,995
17년 전 조회 3,357
17년 전 조회 2,674
17년 전 조회 3,567
17년 전 조회 1,194
17년 전 조회 2,298
17년 전 조회 1,367
17년 전 조회 1,246
17년 전 조회 1,107
17년 전 조회 1,095
17년 전 조회 1,468
17년 전 조회 2,907
17년 전 조회 3,299
17년 전 조회 3,045
17년 전 조회 1,925
17년 전 조회 4,032
17년 전 조회 1,455
17년 전 조회 1,176
17년 전 조회 1,289
17년 전 조회 1,159
17년 전 조회 1,411
17년 전 조회 1,781
17년 전 조회 2,372
17년 전 조회 2,458
17년 전 조회 1,463
17년 전 조회 1,221
17년 전 조회 2,479
17년 전 조회 2,902
17년 전 조회 3,272
17년 전 조회 3,212
17년 전 조회 2,364
17년 전 조회 3,796
17년 전 조회 3,217
17년 전 조회 5,546
17년 전 조회 2,692
17년 전 조회 1,906
17년 전 조회 1,978
17년 전 조회 1,815
17년 전 조회 1,744
17년 전 조회 2,804
17년 전 조회 1,925
17년 전 조회 1,611
17년 전 조회 2,106
17년 전 조회 1,166
17년 전 조회 1,709
17년 전 조회 2,916
17년 전 조회 2,161
17년 전 조회 1,845
17년 전 조회 2,065
17년 전 조회 1,367
17년 전 조회 1,746
17년 전 조회 1,260
17년 전 조회 1,816
17년 전 조회 1,830
17년 전 조회 1,087
17년 전 조회 3,175
17년 전 조회 4,359
17년 전 조회 2,500
17년 전 조회 7,514
17년 전 조회 3,860
17년 전 조회 4,198
17년 전 조회 2,463
17년 전 조회 2,925
17년 전 조회 3,671
17년 전 조회 4,045
17년 전 조회 3,197
17년 전 조회 3,187
17년 전 조회 3,342
17년 전 조회 2,501
17년 전 조회 2,096
17년 전 조회 3,137
17년 전 조회 3,298
17년 전 조회 4,650
17년 전 조회 1,625
17년 전 조회 2,656
17년 전 조회 2,735
17년 전 조회 1,948
17년 전 조회 2,257
17년 전 조회 1,879
17년 전 조회 2,421
17년 전 조회 3,813
17년 전 조회 3,923