当前位置: 首页 > news >正文

会议室预约系统-检验是否被预约核心SQL

会议室预约时,判断能否被预约,即查询是否已经有预约记录,存在不能被预约。

s,e;表示已经预约的开始结束时间;
ns,ne,表示表单提交的预约时间;

只需要(ns,ne)与(s,e)区间没有交集,可以被预约;
ns<s,ne<s; 没有交集
ns<s,ne>s;有交集
s<=ns <e;有交集
ns>=e;没有交集

数据库中查询有交集,大于0;存在交集无法预约;

    <select id="selectBuiMeetingRecordExist" parameterType="BuiMeetingRecord" resultType="java.lang.Integer">
        select count(*) from omp_bui_meeting_record
        where bui_id = #{buiId} and
        ( #{startTime} &lt; start_time and start_time &lt; #{endTime})
                                                or
        (start_time &lt;= #{startTime} and #{startTime} &lt; end_time)
    </select>

mybatis中比较运算符需要转义

http://www.lryc.cn/news/100598.html

相关文章:

  • C++11类模板
  • SpiderFlow爬虫平台(爬虫学习)
  • Rime输入法配置
  • R语言学习笔记--列表list、数据框
  • 电磁波定义、特性以及信道相关知识
  • TCP KeepAlive与HTTP Keep-Alive
  • SkyWalking链路追踪-Agent (代理人)
  • 多线程案例 | 单例模式、阻塞队列、定时器、线程池
  • C++文件操作
  • overleaf(latex) 公式过大,需要调小字体,同时公式编号字体不变的方法
  • flink采用thrift读取tablets一个天坑
  • Android 面试题 异常捕获 四
  • 自动化测试:让软件测试更高效更愉快!
  • SpringCloud学习—Feign负载均衡
  • 5G时代的APP开发:机遇与挑战
  • Python基础入门教程(上)
  • 【环境配置】Windows下WSL将ubuntu挪位置-系统盘清理
  • 【前端知识】React 基础巩固(三十三)——Redux的使用详解
  • 如何进行SQL优化
  • docker 部署 mysql8.0 无法访问
  • 理解构建LLM驱动的聊天机器人时的向量数据库检索的局限性 - (第1/3部分)
  • IntersectionObserver实现小程序长列表优化
  • Nginx动静分离、资源压缩、负载均衡、黑白名单、防盗链等实战
  • Rust之枚举与模式匹配
  • nfs服务器的描述,搭建和使用
  • libuv库学习笔记-filesystem
  • 记录vue的一些踩坑日记
  • Mybatis学习笔记
  • 网络编程(11):三次握手和四次挥手部分细节(后续补充)
  • MySQL学习笔记 ------ 子查询