mysql-如何仅按月和年指定日期范围获取数据 [英] mysql - How to get data by date range given only month and year

查看:133
本文介绍了mysql-如何仅按月和年指定日期范围获取数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面是我的mysql表:

Below is my mysql table:

--------------------------
ID  Date_From   Date_To
--------------------------
1   2011-02-01  2011-02-28
2   2012-09-01  2012-09-30
3   2012-10-01  2012-10-30
4   2012-11-01  2012-11-30
5   2012-12-01  2012-12-30
6   2013-01-01  2013-01-30
7   2014-03-01  2014-03-31

我有以下mysql语句:

I have this mysql statement:

SELECT *
FROM TIME_PERIOD
WHERE
  (YEAR(DATE_FROM) >= '2012' AND MONTH(DATE_FROM) >= '10')
  AND (YEAR(DATE_TO) <= '2013' AND MONTH(DATE_TO) <= '12');

仅返回具有ID 3, 4,5的记录.我希望返回的是带有ID 3, 4, 5,6的记录.

which returns only the records with ID 3, 4, and 5. What Im expecting to return are records with ID 3, 4, 5, and 6.

请帮助.

推荐答案

您需要使用以下查询:

SELECT * FROM TIME_PERIOD WHERE 
(YEAR(DATE_FROM) >= '2013' OR (YEAR(DATE_FROM) >= '2012' AND
 MONTH(DATE_FROM) >= '10')) AND 
(YEAR(DATE_TO) <= '2013' AND MONTH(DATE_TO) <= '12');

这篇关于mysql-如何仅按月和年指定日期范围获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆