2013-12-14 3 views
0

후 기록을 가져 오기 :나는 테이블이 정수 유닉스 타임 스탬프

CREATE TABLE messages (
    id INTEGER PRIMARY KEY AUTOINCREMENT, 
    time TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 
    body TEXT 
); 

을 그리고 특정 타임 스탬프 이후에 추가 기록을 얻기 위해 노력하고 있어요. 여기에 사용하려고 무엇을 :

SELECT * FROM messages WHERE time > 1387039688 

SELECT * FROM `messages` WHERE time > 1387039688000 

하지만 대신 지정된 시간 이후 단지 사람의 테이블에있는 모든 레코드를 얻을.

답변

2

당신은 DATE 값으로 타임 스탬프를 변환 할 FROM_UNIXTIME 기능을 사용할 수 있습니다 :

SELECT * FROM messages WHERE time > FROM_UNIXTIME(1387039688) 
+0

하는 일을 그. 하지만 왜? 필자는 항상 TIMESTAMP가 32 비트 정수로 저장되고 정수로 비교 될 수 있다고 생각했습니다. 그러나 여기서 정수는 다른 정수와 비교하여 변환됩니까? – Xeos

+1

MySQL은 정수 리터럴을'YYYYMMDDHHMMSS' 또는'YYMMDDHHMMSS' 형식의 날짜로 인식합니다 ([documentation] (http://dev.mysql.com/doc/refman/5.0/en/date-and-time-literals 참조). html)). – Mureinik

관련 문제