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

· 17년 전 · 3910
-- 년월일
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,382
17년 전 조회 1,271
17년 전 조회 1,381
17년 전 조회 2,556
17년 전 조회 4,360
17년 전 조회 1,337
17년 전 조회 4,093
17년 전 조회 4,248
17년 전 조회 1,360
17년 전 조회 2,324
17년 전 조회 1,769
17년 전 조회 3,370
17년 전 조회 1,511
17년 전 조회 3,758
17년 전 조회 3,546
17년 전 조회 2,724
17년 전 조회 3,092
17년 전 조회 2,780
17년 전 조회 2,108
17년 전 조회 3,462
17년 전 조회 2,797
17년 전 조회 3,674
17년 전 조회 1,289
17년 전 조회 2,410
17년 전 조회 1,476
17년 전 조회 1,336
17년 전 조회 1,219
17년 전 조회 1,199
17년 전 조회 1,580
17년 전 조회 3,019
17년 전 조회 3,402
17년 전 조회 3,159
17년 전 조회 2,045
17년 전 조회 4,153
17년 전 조회 1,560
17년 전 조회 1,277
17년 전 조회 1,389
17년 전 조회 1,265
17년 전 조회 1,503
17년 전 조회 1,884
17년 전 조회 2,495
17년 전 조회 2,569
17년 전 조회 1,569
17년 전 조회 1,318
17년 전 조회 2,584
17년 전 조회 3,015
17년 전 조회 3,384
17년 전 조회 3,329
17년 전 조회 2,490
17년 전 조회 3,911
17년 전 조회 3,341
17년 전 조회 5,651
17년 전 조회 2,806
17년 전 조회 2,014
17년 전 조회 2,097
17년 전 조회 1,933
17년 전 조회 1,867
17년 전 조회 2,923
17년 전 조회 2,046
17년 전 조회 1,722
17년 전 조회 2,225
17년 전 조회 1,269
17년 전 조회 1,822
17년 전 조회 3,040
17년 전 조회 2,277
17년 전 조회 1,949
17년 전 조회 2,185
17년 전 조회 1,475
17년 전 조회 1,866
17년 전 조회 1,368
17년 전 조회 1,926
17년 전 조회 1,942
17년 전 조회 1,193
17년 전 조회 3,296
17년 전 조회 4,463
17년 전 조회 2,616
17년 전 조회 7,620
17년 전 조회 3,985
17년 전 조회 4,306
17년 전 조회 2,574
17년 전 조회 3,051
17년 전 조회 3,798
17년 전 조회 4,142
17년 전 조회 3,313
17년 전 조회 3,294
17년 전 조회 3,452
17년 전 조회 2,626
17년 전 조회 2,214
17년 전 조회 3,250
17년 전 조회 3,416
17년 전 조회 4,753
17년 전 조회 1,726
17년 전 조회 2,767
17년 전 조회 2,836
17년 전 조회 2,051
17년 전 조회 2,357
17년 전 조회 1,989
17년 전 조회 2,531
17년 전 조회 3,931
17년 전 조회 4,035