我想SELECT
5项WHERE
unix_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
答案 0 :(得分: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()
返回当前日期
答案 1 :(得分: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中已经有一个名为UNIX_TIMESTAMP()
的函数。