会议室预约系统-检验是否被预约核心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中比较运算符需要转义

相关推荐
袋鼠云数栈1 小时前
从SQL Server到分布式大数据平台:重构企业数据架构
大数据·分布式·sql·重构·数据库架构
羊小猪~~2 小时前
数据库学习笔记(十五)--变量与定义条件与处理程序
数据库·人工智能·笔记·后端·sql·学习·mysql
TDengine (老段)2 小时前
TDengine 基础功能——数据写入
大数据·数据库·物联网·oracle·时序数据库·tdengine·涛思数据
Estar.Lee5 小时前
MySQL中触发器详解 触发器在自动化任务中的应用场景
mysql·oracle·自动化·免费api·接口大全
草履虫建模6 小时前
Tomcat 和 Spring MVC
java·spring boot·spring·spring cloud·tomcat·mvc·intellij-idea
····懂···6 小时前
数据库专家 OCP 认证培训:开启职业黄金赛道
数据库·oracle·ocp
潘小磊7 小时前
高频面试之10 Spark Core & SQL
sql·面试·spark
眸笑丶7 小时前
.NET Core 数据库连接字符串加密与解密
数据库·oracle·.netcore
layman05289 小时前
openEuler 虚拟机中 Shell 脚本实现自动化备份与清理实践
数据库·oracle·自动化
在未来等你16 小时前
SQL进阶之旅 Day 29:NoSQL结合使用策略
redis·sql·mongodb·elasticsearch·postgresql·nosql·hybrid-database