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

相关推荐
小马爱打代码18 分钟前
MyBatis:性能优化实战 - 从 SQL 优化到索引设计
sql·性能优化·mybatis
PawSQL3 小时前
智能SQL优化工具 PawSQL 月度更新 | 2025年10月
数据库·人工智能·sql·sql优化·pawsql
llxxyy卢4 小时前
SQL注入之堆叠及waf绕过注入(安全狗)
数据库·sql·安全
dblens 数据库管理和开发工具5 小时前
PostgreSQL模式:数据库中的命名空间艺术
数据库·postgresql·oracle
水冗水孚5 小时前
效能工具(九)之编写nodejs脚本使用get-video-duration批量读取视频时长,并生成sql语句修复数据库表字段值
sql·node.js
float_六七7 小时前
SQL中的NULL陷阱:为何=永远查不到空值
java·前端·sql
nvd117 小时前
GKE连接私有Cloud SQL疑难问题排查实录
数据库·sql
Dev7z7 小时前
MySQL 错误 1046 (3D000) 是因为在执行 SQL 语句时 没有选择当前数据库
数据库·sql·mysql
yumgpkpm8 小时前
Hadoop大数据平台在中国AI时代的后续发展趋势研究CMP(类Cloudera CDP 7.3 404版华为鲲鹏Kunpeng)
大数据·hive·hadoop·python·zookeeper·oracle·cloudera
l1t11 小时前
把ITPUB newkid先生编写的Oracle语法数独求解SQL改写成DuckDB
数据库·人工智能·sql·oracle·duckdb