【问题标题】:Mysql, select rows according to dateMysql,根据日期选择行
【发布时间】:2012-10-04 13:14:33
【问题描述】:

我想做的事:

选择日期 = 2012-10-14 的行,然后显示该行之后的 4 行。所以从这个列表中

2012-10-12 column #2
2012-10-13 column #2
2012-10-14 was very sunny.
2012-10-15 rained all day.
2012-10-16 whatever.
2012-10-17 column #2
2012-10-18 column #2
2012-10-19 rained all day.
2012-10-20 whatever.
2012-10-21 column #2
2012-10-22 column #2

它会返回这个:

2012-10-14 was very sunny.
2012-10-15 rained all day.
2012-10-16 whatever.
2012-10-17 column #2
2012-10-18 column #2

感谢您的帮助。

PS:数据库中没有周末的数据,所以有些日期会丢失。

【问题讨论】:

    标签: php mysql database phpmyadmin mysqli


    【解决方案1】:
    SELECT * FROM my_table WHERE date >= '2012-10-14' ORDER BY date LIMIT 5
    

    sqlfiddle 上查看。

    【讨论】:

      【解决方案2】:

      此版本适用于日期范围,而不是固定数量的行。不完全清楚你想要哪一个。

      select * from mytable where date_diff(date,'2012-10-14') <= 4 and date >= '2012-10-14';
      

      【讨论】:

      • 在这种情况下,我很想做一些更明确的事情:WHERE date BETWEEN '2012-10-14' AND '2012-10-14' + INTERVAL 4 DAY
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 2012-09-25
      相关资源
      最近更新 更多