我有一张假期表,按日期存储,所以它们有一年:

Christmas        2014-12-25
Birthday         2014-05-12
Holiday 3        2015-11-27


假设今天是2020年11月1日,如何按月,日发生的顺序检索接下来三个月的假期?因此,记录集应如下所示:

Holiday 3        2015-11-27
Christmas        2014-12-25


编辑:如果我修改了表格以在单独的列中包括月份和日期,这由下面的PressingOnAlways建议,我如何查询日期范围?

Holiday          Year        Month      Date
Christmas        2014        12         25
Birthday         2014        05         12
Holiday 3        2015        11         27

最佳答案

您可以使用SQL的DAY()和MONTH()方法选择假期
在您的where子句中使用DAY(holiday)和MONTH(holiday)
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_day

http://www.sqlfiddle.com/#!2/92c97/15

关于mysql - MySQL按月,日(不考虑年份)获得下三个假期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23142438/

10-11 04:58