MySQL选择指定日期在开始日期和结束日期之间的行

时间:2014-06-25 14:35:35

标签: mysql sql datetime

我的表格包含开始日期和时间的列(日期时间),“startdate”以及结束日期和时间的列(日期时间),“endtime”。

我想从表中选择startdate和enddate包含指定日期的行。

示例:我的行的开始日期为2014-06-22 20:00:00,结束日期为2014-06-29 23:00:00,我想选择具有指定日期范围的行某一天(2014-06-25)。

这是我的查询目前没有做我想要的...

SELECT * FROM my_tbl WHERE `startdate` >= '2014-06-22 00:00:00' AND `enddate` <= '2014-06-22 23:59:59'

我也在SQL查询中尝试了Between。我想我将不得不用startdate和enddate创建一个日期范围,并从指定的日期开始引用,但我不知道该怎么做。请帮忙!

修改

我的表有2个日期列。我注射了一个特定的日子(2014-06-25)。我想在指定日期之前或之后返回具有开始日期(startdate)的行,并在指定日期之后或之后返回结束日期(enddate)。所以基本上我希望基于指定日期显示活动行。

1 个答案:

答案 0 :(得分:0)

DATEDIFF功能与日期部分一起使用。

SELECT * FROM my_table WHERE DATEDIFF(day, date1, date2) >= 0

Source