有一个INT字段,我将时间戳存储在表中。
我想在此时间戳前一周选择行
WHERE last_loc_date > DATE(NOW()) - INTERVAL 1 WEEK
不起作用。任何的想法?
答案 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)