在时间戳前1周选择行

时间:2018-06-04 11:50:40

标签: mysql timestamp

有一个INT字段,我将时间戳存储在表中。

我想在此时间戳前一周选择行

WHERE last_loc_date > DATE(NOW()) - INTERVAL 1 WEEK

不起作用。任何的想法?

2 个答案:

答案 0 :(得分:0)

您可以使用unix_timestamp计算第二个参数:

WHERE last_loc_date > unix_timestamp(DATE(NOW()) - INTERVAL 1 WEEK)

请避免使用FROM_UNIXTIME(last_loc_date) > DATE(NOW()) - INTERVAL 1 WEEK。除非您使用基于函数的索引,否则此条件为not SARGable

答案 1 :(得分:0)

如果你想要严格尊重一周

,请不要使用DATE(now())
WHERE last_loc_date > unix_timestamp(NOW() - INTERVAL 1 WEEK)