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

· 17년 전 · 4102
-- 년월일
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,579
17년 전 조회 1,476
17년 전 조회 1,576
17년 전 조회 2,759
17년 전 조회 4,572
17년 전 조회 1,511
17년 전 조회 4,275
17년 전 조회 4,448
17년 전 조회 1,562
17년 전 조회 2,537
17년 전 조회 1,967
17년 전 조회 3,576
17년 전 조회 1,707
17년 전 조회 3,974
17년 전 조회 3,759
17년 전 조회 2,931
17년 전 조회 3,293
17년 전 조회 3,009
17년 전 조회 2,302
17년 전 조회 3,661
17년 전 조회 3,000
17년 전 조회 3,872
17년 전 조회 1,499
17년 전 조회 2,604
17년 전 조회 1,678
17년 전 조회 1,538
17년 전 조회 1,417
17년 전 조회 1,400
17년 전 조회 1,765
17년 전 조회 3,203
17년 전 조회 3,599
17년 전 조회 3,354
17년 전 조회 2,236
17년 전 조회 4,349
17년 전 조회 1,746
17년 전 조회 1,481
17년 전 조회 1,600
17년 전 조회 1,455
17년 전 조회 1,701
17년 전 조회 2,076
17년 전 조회 2,676
17년 전 조회 2,757
17년 전 조회 1,770
17년 전 조회 1,527
17년 전 조회 2,776
17년 전 조회 3,217
17년 전 조회 3,577
17년 전 조회 3,515
17년 전 조회 2,693
17년 전 조회 4,103
17년 전 조회 3,533
17년 전 조회 5,834
17년 전 조회 3,004
17년 전 조회 2,205
17년 전 조회 2,283
17년 전 조회 2,118
17년 전 조회 2,066
17년 전 조회 3,126
17년 전 조회 2,238
17년 전 조회 1,892
17년 전 조회 2,423
17년 전 조회 1,464
17년 전 조회 2,022
17년 전 조회 3,246
17년 전 조회 2,487
17년 전 조회 2,135
17년 전 조회 2,365
17년 전 조회 1,675
17년 전 조회 2,072
17년 전 조회 1,572
17년 전 조회 2,103
17년 전 조회 2,134
17년 전 조회 1,382
17년 전 조회 3,468
17년 전 조회 4,653
17년 전 조회 2,795
17년 전 조회 7,816
17년 전 조회 4,176
17년 전 조회 4,500
17년 전 조회 2,749
17년 전 조회 3,251
17년 전 조회 3,985
17년 전 조회 4,330
17년 전 조회 3,508
17년 전 조회 3,501
17년 전 조회 3,633
17년 전 조회 2,787
17년 전 조회 2,389
17년 전 조회 3,429
17년 전 조회 3,604
17년 전 조회 4,920
17년 전 조회 1,934
17년 전 조회 2,947
17년 전 조회 3,027
17년 전 조회 2,255
17년 전 조회 2,544
17년 전 조회 2,170
17년 전 조회 2,731
17년 전 조회 4,129
17년 전 조회 4,211