ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • mssql datetime 데이터형
    개발 관련/MS-SQL 2009. 10. 13. 14:31

    ★DATETIME 형식

    1753년 1월 1일에서 9999년 12월 31일까지 1/300초(3.33밀리초 또는 0.00333 초)의 정확성을 가진 날짜 및 시간 데이터입니다. 다음과 같이 .000, .003, .007밀리초 단위로 값이 반올림됩니다.

    예제 반올림된 예
    1998-01-01 23:59:59.999 1998-01-01 00:00:00.000
    1998-01-01 23:59:59.995,
    1998-01-01 23:59:59.996,
    1998-01-01 23:59:59.997,
    1998-01-01 23:59:59.998 1998-01-01 23:59:59.997
    1998-01-01 23:59:59.992,
    1998-01-01 23:59:59.993,
    1998-01-01 23:59:59.994 1998-01-01 23:59:59.993
    1998-01-01 23:59:59.990,
    1998-01-01 23:59:59.991


    ★SMALLDATETIME
    1900년 1월 1일에서 2079년 6월 6일까지 분 단위의 정확성을 가진 날짜 및 시간 데이터입니다. 29.998 초 이하의 smalldatetime 값은 근사치 분으로 버림되며 29.999 초 이상의 값은 근사치 분으로 반올림됩니다.

    --returns time as 12:35
    SELECT CAST('2000-05-08 12:35:29.998' AS smalldatetime)
    GO
    --returns time as 12:36
    SELECT CAST('2000-05-08 12:35:29.999' AS smalldatetime)
    GO


    ★ 첫번째 방법


    asp로 코딩하신듯합니다. 데이터 형식을 날짜가아는 일반 char 나 vachar로 잡으신 후

    asp에서 date()함수나 NOW()함수를 이용하여 데이터를 집어 넣는 방식입니다.

    데이터를 출력할때는 LEFT나 RIGHT 혹은 MID 함수를 적절히 사용하고 출력하고 싶으신 부분만

    출력하시면됩니다. 물론 님처럼 시간까지 나오려면 NOW()함수를 쓰셔야 하구요


    ★두번째 방법

    데이터 형식을 smalldatetime형으로 잡으신 후 select left(날짜필드,16) from 테이블

    식으로 불러들이시면 가장 편할듯 합니다.

    주의하실 사항은 시퀄의 날짜포맷형식이 YYMMDD로 설정되어있어야 한다는 것입니다.

    만약 그렇게 설정되어 있지 않다면

    쿼리분석기에 SET DATEFORMAT YMD 명령을 치시면 년/월/일 순으로 출력되게 됩니다.

    ★★ datetime 날짜를 YYYY-MM-DD 로 표시하기

    select LEFT(CONVERT(VARCHAR, CONVERT(datetime, 필드, 120), 120), 10)
    from 테이블

     



     

     

Designed by Tistory.