Mysql查询结果从最后604800秒开始

时间:2016-06-26 09:29:09

标签: mysql

我试图从上周获取我的查询结果。 数据库使用UNIX时间戳,因此只需几秒钟。

我已经想出了这个,但这似乎并不奏效。它给了我最好的结果。我只需要最后604.800秒的结果。

    SELECT `mod_id`, COUNT(`mod_id`) m from `history_spottings` WHERE (`created` - 604800)
GROUP BY `mod_id`
ORDER BY m DESC;

2 个答案:

答案 0 :(得分:1)

您的WHERE条款有误,WHERE (created - 604800)将始终评估为TRUE,除非created为空,它与WHERE 1

SELECT `mod_id`, COUNT(`mod_id`) m 
from `history_spottings`
WHERE `created` >=  UNIX_TIMESTAMP() - 604800
GROUP BY `mod_id`
ORDER BY m DESC;

答案 1 :(得分:0)

SELECT `mod_id`, COUNT(`mod_id`) m from `history_spottings` WHERE `created` BETWEEN (UNIX_TIMESTAMP() - 604800) AND (UNIX_TIMESTAMP())
GROUP BY `mod_id`
ORDER BY m DESC;