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

相关推荐
龙仔72510 小时前
SQL Server 创建只读账号完整操作(分两种场景:SSMS图形界面 + T-SQL脚本)
数据库·sql·oracle
Csvn14 小时前
📊 SQL 入门 Day 2:排序与去重 — 让数据有序呈现
sql
曹牧14 小时前
Oracle:快速定位最新数据
数据库·oracle
龙仔72516 小时前
SQL Server 批量多库只读账号一键脚本(带逐行注释完整脚本 + 分段逐句详细解释)
服务器·数据库·sql·sqlserver·dba
程序猿秃头之路18 小时前
DDD 系列:实体和值对象详解
数据库·oracle·ddd·领域驱动设计
明天谭18 小时前
EzCloud自定义BI报表模块源码解析:动态SQL查询、可视化图表与多租户数据统计实现
数据库·sql·数据报表·bi可视化·ezcloud·java动态sql
爸爸6191 天前
30 原始 SQL 查询与聚合统计:querySql 实战
数据库·sql·华为·harmonyos·鸿蒙系统
喜欢的名字被抢了1 天前
Python实战:SQLAlchemy ORM与FastAPI项目集成
开发语言·python·sql·教程·fastapi