我有一个MySQL数据库表,带有一个unix时间戳字段。我想知道如何获得最近的完整13周?
更新
但我需要选择退出本周。所以我需要最后的完整(在过去或今天结束)13周。
答案 0 :(得分:2)
WHERE FROM_UNIXTIME(timestamp) > DATE_SUB(FROM_UNIXTIME(timestamp), INTERVAL 13 WEEKS)
如果您想要排除当前周,您可以这样做:
WHERE FROM_UNIXTIME(timestamp) < DATE_SUB(NOW(), INTERVAL 1 WEEKS)
答案 1 :(得分:0)
SELECT *,FROM_UNIXTIME(time) AS TS FROM MyTable WHERE TS > DATE_SUB(TS, INTERVAL 13 WEEKS)
认为应该有效
答案 2 :(得分:0)
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-add
SELECT * FROM foo WHERE created >= DATE_SUB(NOW(), INTERVAL 13 WEEK);