当前位置: 首页 > 面试题库 >

是否有任何MySQL函数可以获取开始日期或结束日期在给定开始日期和结束日期之间的所有行?

柳星晖
2023-03-14
问题内容

我有一个事件表,其中记录了一个开始和结束时间,作为MySQL DATETIME对象(格式YYYY-MM-DD HH:MM:SS。我想查找在特定日期范围内发生的所有事件。但是,事件可能跨越多天(并且超出了我的范围)日期范围,但是如果它们与我的日期范围重叠1秒或更长时间,我想返回它们。

有什么建议吗?


问题答案:

这将找到范围内完全包含的每个事件:

SELECT * FROM table WHERE start_date BETWEEN start_of_range AND end_of_range 
                      AND stop_date  BETWEEN start_of_range AND end_of_range

这将查找事件的任何部分与范围的任何部分重叠的任何事件:

SELECT * FROM table WHERE start_date <= end_of_range 
                      AND stop_date  >= start_of_range


 类似资料:
  • 问题内容: 我想检查日期是否在开始日期和结束日期之间。 我添加了一个where子句 但问题在于它不包含“ 2010-04-15”。 它应该包括结束日期,我该怎么办? 请帮我 问候, 潘卡 问题答案: 明确指定时间部分:

  • 问题内容: 如果可能的话,在以下情况下,我希望使用joda或非joda解决方案 假设我的一周从2012年5月2日开始,给定的当前日期为02/22/2011。我需要计算给定当前日期的星期开始和结束日期。因此,我的解决方案的星期应该从02/19开始,而星期在02/25结束。为简单起见,我将我的工作日设置为02/05/2011,但是可能是任何一天,我的工作日始终为7天。 我现有的代码如下,但似乎无法按预

  • 本文向大家介绍php计算给定日期所在周的开始日期和结束日期示例,包括了php计算给定日期所在周的开始日期和结束日期示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php计算给定日期所在周的开始日期和结束日期。分享给大家供大家参考,具体如下: 运行结果如下: PS:这里再为大家推荐几款时间及日期相关工具供大家参考使用: 在线日期/天数计算器: http://tools.jb51.net/

  • 简要背景:我在保险业工作,出于各种税收原因,我们通常需要知道雇员一年受雇多少个月,以及他们获得保险的月份。雇员在受雇60天后的第一个月有资格获得保险。 获取资格日期很简单。从技术上讲,获取受雇和提供的月数很简单……直到我遇到跨越多年的情况。为了我的报告的目的,我只需要知道2017年的数据。例如,R3在2017年只受雇两个月,所以我需要“#Mon Emp”为2。我目前使用的是=DATEDIF(F2,

  • 问题内容: 我正在尝试使用周日作为开始日期以及参考日期(例如)来获取星期范围,但是我似乎无法弄清楚。 例如,如果我将$ date设置为2009-05-01,则将获得2009-04-26和2009-05-02。2009-05-10将产生2009-05-10和2009-05-16。我当前的代码如下所示(我不记得我从何处提起它,因为我忘记在评论中放下网址): 我意识到它所做的只是将当前日期增加了7天。你

  • 问题内容: 以下是我用来计算给定月份的星期开始日期和结束日期的代码。假设周开始日期为MONDAY,周结束日期为SUNDAY。例如,2013年1月将有5个星期。如果月份从星期日开始- 忽略该天 2013年1月第一周-2012年12月31日至2013年1月6日第二周-2013年1月7日至2013年1月13日第三周-2013年1月14日至2013年1月20日第四周-21日-2013至2013年1月27日