mysql从昨天开始为每篇文章选择项目

时间:2014-05-16 21:01:26

标签: mysql sql

我尝试选择每篇文章'昨天'的文章 - 就像昨天我写的那样......

mysql表art:id int,date datetime,text text ...

SELECT
art.id, art.text, art.date
FROM art
WHERE
date(art.date)=curdate() -interval 1 day

效果很好,但不适合最古老的文章(不是每天都有,增量 - 间隔1 ... 2 ... 3 ..日不是解决方案

date(art.date)-interval 1 day

返回文章的正确日期 但是

WHERE
date(art.date)=date(art.date)-interval 1 day

不要返回任何行 可以使用这样的结构吗?这是我的错?多大 ? :)

我刚刚做了解决方法,但我很喜欢“只有mysql”解决方案。

1 个答案:

答案 0 :(得分:0)

以下是我对这个问题的理解。对于任何给定日期,您需要上一个日期中有文章的文章。

SELECT art.id, art.text, art.date
FROM art join
     (select max(art.date) as yestdate
      from art
      where art.date <= curdate() -interval 1 day
     ) const
WHERE date(art.date) = yestdate;