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

· 17년 전 · 4135
-- 년월일
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,611
17년 전 조회 1,503
17년 전 조회 1,606
17년 전 조회 2,791
17년 전 조회 4,607
17년 전 조회 1,547
17년 전 조회 4,309
17년 전 조회 4,477
17년 전 조회 1,590
17년 전 조회 2,570
17년 전 조회 2,000
17년 전 조회 3,609
17년 전 조회 1,744
17년 전 조회 4,012
17년 전 조회 3,787
17년 전 조회 2,965
17년 전 조회 3,336
17년 전 조회 3,040
17년 전 조회 2,351
17년 전 조회 3,697
17년 전 조회 3,031
17년 전 조회 3,911
17년 전 조회 1,529
17년 전 조회 2,644
17년 전 조회 1,714
17년 전 조회 1,573
17년 전 조회 1,454
17년 전 조회 1,437
17년 전 조회 1,798
17년 전 조회 3,245
17년 전 조회 3,629
17년 전 조회 3,394
17년 전 조회 2,274
17년 전 조회 4,389
17년 전 조회 1,781
17년 전 조회 1,517
17년 전 조회 1,636
17년 전 조회 1,488
17년 전 조회 1,740
17년 전 조회 2,119
17년 전 조회 2,711
17년 전 조회 2,788
17년 전 조회 1,797
17년 전 조회 1,560
17년 전 조회 2,804
17년 전 조회 3,244
17년 전 조회 3,605
17년 전 조회 3,546
17년 전 조회 2,727
17년 전 조회 4,136
17년 전 조회 3,569
17년 전 조회 5,877
17년 전 조회 3,031
17년 전 조회 2,233
17년 전 조회 2,313
17년 전 조회 2,152
17년 전 조회 2,099
17년 전 조회 3,160
17년 전 조회 2,274
17년 전 조회 1,923
17년 전 조회 2,455
17년 전 조회 1,497
17년 전 조회 2,056
17년 전 조회 3,288
17년 전 조회 2,520
17년 전 조회 2,170
17년 전 조회 2,399
17년 전 조회 1,709
17년 전 조회 2,106
17년 전 조회 1,603
17년 전 조회 2,138
17년 전 조회 2,169
17년 전 조회 1,418
17년 전 조회 3,508
17년 전 조회 4,687
17년 전 조회 2,835
17년 전 조회 7,850
17년 전 조회 4,211
17년 전 조회 4,532
17년 전 조회 2,783
17년 전 조회 3,292
17년 전 조회 4,015
17년 전 조회 4,358
17년 전 조회 3,545
17년 전 조회 3,542
17년 전 조회 3,674
17년 전 조회 2,814
17년 전 조회 2,432
17년 전 조회 3,474
17년 전 조회 3,644
17년 전 조회 4,963
17년 전 조회 1,966
17년 전 조회 2,980
17년 전 조회 3,066
17년 전 조회 2,289
17년 전 조회 2,570
17년 전 조회 2,208
17년 전 조회 2,767
17년 전 조회 4,170
17년 전 조회 4,247