2012-03-04 58 views
0

特定时期流行的帖子我有这个表:选择从时间

ID,标题,视图,日期(时间戳)

我想从一个特定的时间段选择最viewd帖子(从两个月前一周,例如)

这是我的查询,但现在它似乎并不奏效:

SELECT * FROM table 
WHERE date > DATE_SUB(DATE_ADD(NOW(), INTERVAL -2 MONTH), INTERVAL 1 WEEK) 
ORDER by views DESC 
LIMIT 10 

这里有一个类似的问题how to select a period of time in mysql?

但我不想指定具有固定日期的时间段,我希望它是相对于剧本的运行。

任何想法?

+0

任何帮助:http://stackoverflow.com/questions/5182275/datetime-equal-or-greater-超今天在MySQL的?特别是'CURDATE()'。 – summea 2012-03-04 01:54:04

+0

我认为这个问题更好http://stackoverflow.com/questions/2642885/display-rows-from-mysql-where-a-datetime-is-within-the-next-hour但我仍然是一个noob时它来到MySQL我无法适应它我的需要。 – dythffvrb 2012-03-04 01:59:23

回答

0

试试这个,让我知道如果您有任何问题:

在此提问/回答
SELECT * FROM stats 
WHERE date between 
    DATE_SUB(NOW(), INTERVAL 2 MONTH) and 
    DATE_ADD(DATE_SUB(NOW(), INTERVAL 2 MONTH), INTERVAL 1 WEEK) 
ORDER by views DESC 
LIMIT 10 
+1

没有问题,现在它似乎工作正常。 谢谢。 – dythffvrb 2012-03-04 05:39:47