Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 查找开始日期和结束日期之间的日期_Mysql - Fatal编程技术网

Mysql 查找开始日期和结束日期之间的日期

Mysql 查找开始日期和结束日期之间的日期,mysql,Mysql,我有一个记录了开始和结束时间的事件表。我想查找在特定日期发生的所有事件。有些活动是一年前开始的,有些将继续进行下去 例如,我希望能够选择2010年5月20日,并查找该日期发生的所有事件。SELECT*FROM yourTable SELECT * FROM yourTable WHERE start_date >= '2010-01-01' AND end_date <= '2010-06-30' 其中,开始日期>='2010-01-01'和结束日期假设您有名为@start\

我有一个记录了开始和结束时间的事件表。我想查找在特定日期发生的所有事件。有些活动是一年前开始的,有些将继续进行下去

例如,我希望能够选择2010年5月20日,并查找该日期发生的所有事件。

SELECT*FROM yourTable
SELECT * FROM yourTable 
  WHERE start_date >= '2010-01-01' AND end_date <= '2010-06-30'

其中,开始日期>='2010-01-01'和结束日期假设您有名为@start\u date和@end\u date的输入参数,并且您希望查找与该范围重叠的任何事件:

select *
  from TableName
 where @start_date between start_date and end_date
    or @end_date between start_date and end_date
从TableName中选择*
其中“2010-05-20”>=开始日期和“2010-05-20”试试

这会让你在2010年3月之后的事件进入未来,而在那之前什么都没有

或者

简单地说,其中(传递值)介于任何事件开始日期和结束日期之间

这些应该会产生结果。这取决于您执行查询的方式。您是否接受表单/url参数来更改日期


但令人困惑的是,您希望所有日期都未过期,但同时也希望日期发生在特定日期。你的开始日期是从哪里开始的?

这将为我提供这些日期之间的所有事件,但是,其中一些事件将在2010年2月和5月之间结束,我不希望过期的事件显示出来。我在搜索页面上的代码如下:$SearchResult=mysql\u query("选择*FROM events,其中start_date>='$start_date'和end_date确定,给定两个输入,请参阅上面的更改。根据您的php.ini,您可能可以使用$start_date而不是@start_date。此问题已解决。我在搜索页面上遇到了一个与我发布的内容无关的错误。感谢您的帮助。这不会产生任何记录这是一个链接,指向一个底部有日历的页面,日历与我的类似:。我希望有人能发布一个如何解决这个问题的想法。
select * from TableName
where '2010-05-20' >= start_date and '2010-05-20' <= end_date
WHERE (((MONTH(start_date) >= MONTH(NOW())) && (MONTH(end_date) <= MONTH(NOW()))) && YEAR(start_date) >= YEAR(NOW()))
WHERE ((MONTH(start_date) >= MONTH(NOW())) && YEAR(start_date) >= YEAR(NOW())))
WHERE (start_date_var) BETWEEN start_date AND end_date