判断两个时间段是否有交集

这篇具有很好参考价值的文章主要介绍了判断两个时间段是否有交集。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

判断两个时间段是否有交集

前言:项目中遇到了类似会议室预约的时间段被占用,预约车辆时间段被占用等。

start:预约开始时间。

end:预约结束时间。

必备条件:start <= end

思考🤔:

怎么判断是否被占用呢?

预约的时间,与目标数据库中任意一条的存在交集,则可以视为占用。

有交集的情况有那几种呢?

  1. (a >= start & a <= end)
    判断两个时间段是否有交集

  2. (b >= start & b <= end)
    判断两个时间段是否有交集

  3. (a <= start & b >= end)
    判断两个时间段是否有交集

  4. (a >= start & b <= end)
    判断两个时间段是否有交集

合并则是 (a >= start and a <= end) or (b >= start and b <= end) or (a <= start and b >= end) or (a >= start and b <= end)

优化:a <= end and b >= start (即可满足4种条件)

补充没有交集

取反(没有交集)

a > end or b < start

判断两个时间段是否有交集

总结:思路不太清楚可以画个图就明了了。查询出目标库中有交集的数据就说明有占用,如果没有则没有占用。文章来源地址https://www.toymoban.com/news/detail-438389.html

到了这里,关于判断两个时间段是否有交集的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • js 比较当前日期是否在某个是个范围之内(时间段内)

    需求描述:判断当前日期或者指定日期是不是在某个时间段内 借用momentjs库去实现 安装moment 1)有两种方法,一种是vue,另一种是node中 当前日期是否在一个日期时间段内 isBetween isBetween:检查一个 moment 是否在其他两个 moment 之间,可选择检查指定的时间刻度(分钟,小时,日

    2024年02月05日
    浏览(53)
  • Java判断两个集合是否具有交集以及如何获得交集

    全限定名为java.util.Collections,在俩个集合没有交集的时候会返回true,否则返回false。 比如: 结果: 全限定名为:org.apache.commons.collections.CollectionUtils,两个集合有交集会返回true,否则会返回false,跟Collections.disjoint相反。 例如: 结果: 全限定名为:cn.hutool.core.collection.Coll

    2024年02月06日
    浏览(50)
  • Java 判断两个IP段是否有交集

    一、背景介绍 在有些场景,需要判断IP段是否有交集,比如:配置一些设备的过滤规则,避免IP段重复配置,需要做IP段是否重叠的校验。 IP段有交集的场景有几种: 1)IP段1包含IP段2; 2)IP段2包含IP段1; 3)IP段1的起始IP与IP段2的结束IP相同,或者IP段1的结束IP与IP段2的起始

    2024年02月16日
    浏览(44)
  • 常用的时间段的时间戳

    获取 昨天这个时间的时间戳 计算今天0点的时间戳 计算今天23点59分59秒的时间戳 计算昨天0点的时间戳 计算昨天23:59:59 秒的时间戳 计算近7日 0点的时间戳(不包含当天) 计算近30天 0点的时间戳(不包含当天) 计算上月第一天 0点的时间戳 计算上月最后一天 23点的时间戳 计算上周

    2024年02月10日
    浏览(35)
  • uniapp 实现时间段选择器

    u-popup结合picker-view搭配使用实现时间段选择器 效果图:  

    2024年02月15日
    浏览(46)
  • hive sql,年月日 时分秒格式的数据,以15分钟为时间段,找出每一条数据所在时间段的上下界限时间值(15分钟分区)

    获取当前的年月日 时分秒 date_format(时间字段, ‘yyyy-MM-dd HH:mm:ss’) 将时间字段转为 2023-10-18 18:14:16 这种格式 在指定时间上增加15分钟 unix_timestamp:获取当前时间的UNIX时间戳(从 1970-01-01 00:00:00 UTC 到指定时间的秒数),然后加上 15*60 秒,即15分钟,就得到了15分钟后的时间戳

    2024年02月08日
    浏览(46)
  • Linux查询指定时间段的日志

    Linux查询指定时间段的日志 可以通过grep或者sed命令查指定时间段日志 1.命令 命令: 2.举例 【例】查询今天10月20日10点30分的这一分钟的日志 第一步,可以先看下日志文件的格式 第二步,通过grep提取和匹配符合条件的字符串行 或者用sed查询 注意事项

    2024年02月12日
    浏览(47)
  • docker查询某时间段的日志

    参考:docker logs 查看docker容器日志详解_Mym_zuoyan_Tmac的博客-CSDN博客_docker logs 查找

    2024年02月16日
    浏览(45)
  • docker导出指定时间段内日志

    命令格式如下: 起始时间 :指定要导出日志的起始时间,格式为YYYY-MM-DDTHH:MM:SS。 结束时间 :指定要导出日志的结束时间,格式为YYYY-MM-DDTHH:MM:SS。 容器ID或名称 :指定要导出日志的Docker容器ID或名称。 导出文件路径 :指定导出日志的文件路径和文件名。 例如,要导出容器

    2024年02月06日
    浏览(42)
  • matlab根据时间列筛选到特定时间段(小时、天、月、年)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 提示:这里可以添加本文要记录的大概内容: 在处理带时间标签的数据时,往往需要对数据进行筛选,本文将介绍一下利用matlab根据时间标签对数据进行筛选的一种方法。 提示:以下是本篇文章正文内

    2024年02月12日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包