2013-08-18 5 views
0

내가하고 싶습니다 SELECT 5 항목 WHERE unix_timestamp 오늘입니다.MySQL : 오늘 이후의 TimeStamp

: (여기가 아닌 형식) UNIX_TIMESTAMP :

15.08.2013 
18.08.2013 
21.08.2013 
27.08.2013 
30.08.2013 

MySQL의 : SELECT * WHERE unix_timestamp is today or after today and ORDER BY unix_timestamp with LIMIT 0,5

MySQL의 결과는 UNIX_TIMESTAMP와 항목이어야합니다

18.08.2013 
21.08.2013 
27.08.2013 
30.08.2013 

답변

1

이 실제로 작동합니다 현재 날짜 (DEMO는) :

SELECT FROM_UNIXTIME(unix_timestamp, '%m.%d.%Y') as `Date` FROM dates WHERE FROM_UNIXTIME(unix_timestamp, '%m.%d.%Y') >= DATE_FORMAT(NOW(), '%m.%d.%Y') ORDER BY unix_timestamp Limit 5; 

나는 가정 한라는 이름 때문에 그 너의 칼럼 unix_timestamp, 귀하의 날짜는 실제로 해당 형식으로 저장됩니다 (예 : 1376825624).

의 이름을 변경하는 것이 좋습니다. 이미 UNIX_TIMESTAMP()이라는 MySQL의 기능이 있기 때문입니다.

1

당신은 이런 식으로 뭔가를 시도 할 수 있습니다 :

SELECT * FROM FOO 
    WHERE UNIX_TIMESTAMP >= NOW() ORDER BY UNIX_TIMESTAMP Limit 5; 

NOW() 반환에 현재 날짜와 시간

을 UNIX_TIMESTAMP 열이 예에 따라 다음 대신 NOW()의 당신이 CURRENT_DATE()을 사용할 수있는 날짜 형식의 데이터가 포함 된 경우.

SELECT * FROM FOO 
    WHERE UNIX_TIMESTAMP >= CURRENT_DATE() ORDER BY UNIX_TIMESTAMP Limit 5; 

CURRENT_DATE() 반환

Date and Time Functions

+0

이 값은> = "* today *"와 같지 않은> = "* now *"입니다. –