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

· 17년 전 · 3934
-- 년월일
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,406
17년 전 조회 1,301
17년 전 조회 1,402
17년 전 조회 2,585
17년 전 조회 4,385
17년 전 조회 1,350
17년 전 조회 4,118
17년 전 조회 4,273
17년 전 조회 1,379
17년 전 조회 2,357
17년 전 조회 1,802
17년 전 조회 3,393
17년 전 조회 1,540
17년 전 조회 3,784
17년 전 조회 3,572
17년 전 조회 2,753
17년 전 조회 3,116
17년 전 조회 2,814
17년 전 조회 2,137
17년 전 조회 3,488
17년 전 조회 2,819
17년 전 조회 3,703
17년 전 조회 1,311
17년 전 조회 2,432
17년 전 조회 1,497
17년 전 조회 1,358
17년 전 조회 1,237
17년 전 조회 1,227
17년 전 조회 1,599
17년 전 조회 3,037
17년 전 조회 3,430
17년 전 조회 3,182
17년 전 조회 2,067
17년 전 조회 4,177
17년 전 조회 1,582
17년 전 조회 1,300
17년 전 조회 1,411
17년 전 조회 1,286
17년 전 조회 1,523
17년 전 조회 1,908
17년 전 조회 2,520
17년 전 조회 2,591
17년 전 조회 1,587
17년 전 조회 1,347
17년 전 조회 2,611
17년 전 조회 3,044
17년 전 조회 3,406
17년 전 조회 3,364
17년 전 조회 2,520
17년 전 조회 3,935
17년 전 조회 3,370
17년 전 조회 5,673
17년 전 조회 2,830
17년 전 조회 2,041
17년 전 조회 2,118
17년 전 조회 1,958
17년 전 조회 1,896
17년 전 조회 2,957
17년 전 조회 2,076
17년 전 조회 1,742
17년 전 조회 2,244
17년 전 조회 1,293
17년 전 조회 1,847
17년 전 조회 3,058
17년 전 조회 2,306
17년 전 조회 1,972
17년 전 조회 2,207
17년 전 조회 1,501
17년 전 조회 1,893
17년 전 조회 1,404
17년 전 조회 1,945
17년 전 조회 1,963
17년 전 조회 1,219
17년 전 조회 3,324
17년 전 조회 4,484
17년 전 조회 2,646
17년 전 조회 7,647
17년 전 조회 4,014
17년 전 조회 4,328
17년 전 조회 2,598
17년 전 조회 3,073
17년 전 조회 3,824
17년 전 조회 4,167
17년 전 조회 3,335
17년 전 조회 3,313
17년 전 조회 3,480
17년 전 조회 2,648
17년 전 조회 2,236
17년 전 조회 3,270
17년 전 조회 3,439
17년 전 조회 4,775
17년 전 조회 1,747
17년 전 조회 2,790
17년 전 조회 2,859
17년 전 조회 2,077
17년 전 조회 2,378
17년 전 조회 2,007
17년 전 조회 2,556
17년 전 조회 3,951
17년 전 조회 4,058