获取所选年份的所有日期

时间:2016-08-23 08:39:55

标签: mysql sql

我有这样的价值:

from          to
2012-04-01    2013-12-31
2014-01-01    2016-08-10
2016-08-11    2016-12-28
2016-12-30    2017-12-20
2017-12-21    2018-12-11

当我选择2016年时,如何获得所有价值。我想得到这个:

from          to
2014-01-01    2016-08-10
2016-08-11    2016-12-28
2016-12-30    2017-12-20

目前我的sql只是获得了2016年来回的价值

.... WHERE From>='2016-01-01' AND To<='2016-12-31'

注意:这是一个示例日期,所以请不要发布这样的答案:

...WHERE From>='2014-01-01' AND To<='2017-12-20'

1 个答案:

答案 0 :(得分:2)

您可以使用YEAR功能:

SELECT from,
       to
FROM yourTable
WHERE YEAR(from) = 2016 OR
      YEAR(to)   = 2016

这将保留具有from日期 to日期的任何记录,该日期位于2016日历年。