我有一个名为timestamp
的字段。这是成员登录的最后一次。
我希望在查询中包含一个where子句,如
WHERE timestamp > todays date - 6 weeks
我该怎么做? 我想尝试只包括过去6周内登录的用户。
由于
答案 0 :(得分:61)
我发现这种语法比date_sub
更具可读性,但无论哪种方式都有效。
WHERE timestamp >= NOW() - INTERVAL 6 WEEK
如果您想要通过“今天”(午夜)而不是“现在”(当前时间),您可以使用此
WHERE timestamp >= DATE(NOW()) - INTERVAL 6 WEEK
答案 1 :(得分:6)
where column>=date_sub(now(), interval 6 week)
答案 2 :(得分:3)
This link演示了如何使用格式DATE_ADD(CURDATE(), INTERVAL -1 DAY)
获取昨天的时间戳,因此您的查询可能是:
WHERE timestamp > DATE_ADD(CURDATE(), INTERVAL -42 DAY)
答案 3 :(得分:2)
您可以在now()
:
select somevalue
from yourtable
where yourtimestamp between now() - interval 1 day and now()
答案 4 :(得分:-1)
还有运气。你试过了吗?
>= DATE_SUB(NOW(), INTERVAL 6 WEEK)