如何按日期显示行?

时间:2016-07-20 08:39:18

标签: mysql database

我需要一种方法来显示按日期(升序)排序的行,但是从现在开始显示日期。我正在使用此查询:

SELECT * FROM status 
ORDER BY YEAR(datestart), MONTH(datestart), DAY(datestart) ASC

但它仍显示比现在更早的行。

这是数据库结构:

id, status, datestart

数据库:

0,blabla,2015-02-12 16:15:12
1,blabla,2017-02-12 16:15:12
2,blabla,2016-08-11 19:13:22
4,blabla,2016-01-27 11:12:02
5,blabla,2016-07-21 18:12:02
6,blabla,2018-03-22 13:35:22
8,blabla,2016-08-15 17:12:32

预期结果:

5,blabla,2016-07-21 18:12:02
2,blabla,2016-08-11 19:13:22
8,blabla,2016-08-15 17:12:32
1,blabla,2017-02-12 16:15:12
5,blabla,2018-03-22 13:35:22

1 个答案:

答案 0 :(得分:4)

您只需添加WHERE子句:

SELECT * FROM status  WHERE datestart > now()
ORDER BY YEAR(datestart), MONTH(datestart), DAY(datestart) ASC