2013-01-11 3 views
0

Sybase 데이터베이스를 사용하고 있습니다. 내 데이터베이스에 나타나는 SQL 타임 스탬프를 다음과 같이 변경하려면 어떻게합니까? 2012-03-23 11:27:04.870000을 unixtime으로 변경하십시오.Sybase에서 SQL 타임 스탬프를 unixtime으로 변환

나는 SQL에서 같은 것을 할 수 있도록하려면 :

select time1, unix_time_function(time1) as time1_to_unixtime from mytable 

이이

을 할 수 있습니까?

+0

선택 UNIX_TIMESTAMP를 사용할 수 있습니다 ('2012-03-23 ​​11 : 27 : 04.870000'); MySQL의 경우 http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_from-unixtime – justMe

답변

3

Wikipedia에 따르면 UNIX 시간은 1970 년 1 월 1 일 이후로 경과 된 초 수 (윤초 제외)입니다. 그걸 염두에 베어링

(내가 완전히 손실되지 않은 경우) 그냥 초 1970-01-01와 시간의 차이,해야한다 :

SELECT time1, 
     Datediff(SECOND, '1970-01-01', time1) AS time1_to_unixtime 
FROM mytable 

잘 모르겠어요 DateDiff이 윤년을 고려하든 그렇지 않든 약간의 조정이 필요할 수 있습니다.

Sybase의 DateDiff에 대한 설명은 here입니다.

0

select convert(char(20),getdate(),101) --- value from 101 to 123 

확인 this article in the Sybase Infocenter 같은 시간을 변환하는 다른 옵션이 사이베이스의 convert 기능이있다.

관련 문제