CAST(0xA9C203F1 AS SmallDateTime) 날짜로 변환하면? 0 2 988

by 조신부리 [SQLServer] [2019.01.18 11:47:35]


안녕하세요.

mssql2008 을 tibero5로 이관을 해야 합니다.

mssql에 CAST(0xA9C203F1 AS SmallDateTime) 로 들어있습니다.

화면에선 2018-12-26 오후 4:49:00 로 보입니다. 

십진수로는 2848064497 인데 2018-12-26 로 어떻게 변환(오라클기준)된건가요?

감사합니다.

 

by 마농 [2019.01.18 13:33:21]

SmallDateTime 은 yyyy-mm-dd hh24:mi 로 분까지만 표시되는 자료형입니다.
SmallDateTime 을 varBinary 로 바꾸면 0xA9C203F1 로 표시되네요.
4자리씩 끊어서 일자와 분을 나타내는 듯 합니다.
 

-- MSSQL --
SELECT CAST(CAST('2018-12-26 16:49' AS SmallDateTime) AS VARBINARY)
--> 0xA9C203F1
-- Oracle --
SELECT base_dt + days + minutes/60/24 AS dt
  FROM (SELECT TO_DATE('19000101', 'yyyymmdd') base_dt  -- 기준일
             , TO_NUMBER('A9C2', 'xxxx')       days     -- 43458 일
             , TO_NUMBER('03F1', 'xxxx')       minutes  --  1009 분
          FROM dual
        )
;

 


by 조신부리 [2019.01.18 14:31:40]

늘 고맙습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입