mysql查询即将开始日期和结束日期的事件并显示过去的事件

时间:2013-06-13 15:45:07

标签: php mysql

我有一个事件表,其开头和结束日期存储如下

 event_id   eventstartdate    eventenddate 
    1       2012-10-02         2012-10-20 
    2       2013-09-27         2013-10-27 
    6       2013-10-18         2013-11-18 
    8       2012-11-06         2012-11-23 
    9       2013-02-05         2013-02-12 
    10      2013-06-11         2013-06-13 

我希望通过今天的事件开始日期显示事件顺序...并根据单个查询中的事件开始日期获取过去的事件..

预期结果如下

event_id   eventstartdate    eventenddate
      1      2013-09-27         2013-10-27 
      2      2013-10-18         2013-11-18
      3      2013-06-11         2013-06-13
      4      2013-02-05         2013-02-12
      5      2012-11-06         2012-11-23 
      6      2012-10-02         2012-10-20

3 个答案:

答案 0 :(得分:1)

我认为您可以使用CURDATE()获取实际数据,然后选择当前数据之前的所有行,然后使用ORDER BY从今天开始按降序排序

SELECT *
FROM table
WHERE eventstartdate < CURDATE()
ORDER BY eventstartdate DESC

答案 1 :(得分:0)

虽然我怀疑这是你所追求的。我需要看到预期的结果才能更好地理解这个问题。

SELECT Event_ID, EventStartDate, EventEndDate 
FROM Table
ORDER BY EventStartDate 

答案 2 :(得分:0)

我认为你应该使用这个查询

SELECT * FROM 
  table 
ORDER BY eventstartdate DESC

根据我的说法,它会将所有带有开始日期顺序的事件发送到desc。意味着今天的事件在当前日期的顶部和底部之一,依此类推。