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

相关推荐
唐青枫2 小时前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
掉头发的王富贵2 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
ClouGence4 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
zzzzzz3107 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
云技纵横9 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
ClouGence10 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
曹牧11 天前
Oracle EXPLAIN PLAN
数据库·oracle
BD_Marathon11 天前
SQL学习指南——视图
数据库·sql
贤时间11 天前
codex 助力oracle ebs 开发
数据库·oracle
秉承初心11 天前
PostgreSQL 数据性能瓶颈突破实战
数据库·postgresql·oracle