MySQL判断时间段是否重合的两种方法

作者:小旭2021 时间:2024-01-21 02:41:05 

两种写法。如图,4种重合情况和2种不重合情况。

MySQL判断时间段是否重合的两种方法

第一种写法:

-- 时间段 a,b  
SELECT * FROM table WHERE
      (start_time >= a and end_time <= b) -- 被包含了
   or (end_time >= a and end_time <=b)
   or (start_time >= a and start_time <=b)
   or (start_time <= a and end_time >=b)

解析:where后的4个条件分别代表了图中4种重合的情况。
但是第一种情况被2和3包含了,所以简化一下写法:

SELECT * FROM table WHERE
   (end_time >= a and end_time <=b)
   or (start_time >= a and start_time <=b)
   or (start_time <= a and end_time >=b);

第二种写法:

SELECT * FROM table WHERE not (start_time > b or end_time < a);

来源:https://www.cnblogs.com/chenyablog/p/14644706.html

标签:MySQL,判断,时间段,重合
0
投稿

猜你喜欢

  • python中文乱码的解决方法

    2022-07-12 18:03:48
  • 微信小程序之数据缓存的实例详解

    2024-04-19 09:49:53
  • Python2.X/Python3.X中urllib库区别讲解

    2022-08-03 01:45:39
  • vue实现触底查询功能

    2024-04-30 10:25:01
  • MySQL 导入慢的解决方法

    2024-01-22 12:08:42
  • js 复制功能 支持 for IE/FireFox/mozilla/ns

    2024-05-11 09:34:59
  • pyecharts绘制中国2020肺炎疫情地图的实例代码

    2022-08-18 08:02:44
  • 谦逊编程(翻译整理)

    2009-07-28 12:52:00
  • 仅用50行Python代码实现一个简单的代理服务器

    2022-11-26 14:44:57
  • 详解Python并发编程之创建多线程的几种方法

    2023-03-31 19:34:37
  • Python之Matplotlib文字与注释的使用方法

    2022-09-09 10:36:51
  • Anaconda安装pytorch和paddle的方法步骤

    2021-04-17 18:21:59
  • python实现批量修改文件名

    2022-03-10 18:44:54
  • Git 教程之标签详解

    2023-10-25 21:58:04
  • APIStar:一个专为Python3设计的API框架

    2022-05-29 03:52:02
  • Python超详细讲解内存管理机制

    2022-02-21 23:11:47
  • Go语言init函数详解

    2024-05-11 09:18:31
  • win7系统安装SQLServer2000的详细步骤(图文)

    2024-01-27 02:39:26
  • 再谈动态添加样式规则

    2009-09-02 13:10:00
  • 浅谈django框架集成swagger以及自定义参数问题

    2022-01-09 20:25:10
  • asp之家 网络编程 m.aspxhome.com