1. 问题背景
公司要做一个项目人员预约的功能,提交的时候要校验当前人员和所选时间段和数据库已有记录是否存在冲突。
2. 问题解决
数据库开始日期ksrq,结束日期jsrq,参数为(a,b),sql语句为
select * from tablename where (ksrq >= a AND ksrq <= b) OR (ksrq <= a AND jsrq >= b) OR (jsrq >= a AND jsrq <= b)
其实很容易理解,满足这三种情况之一即算有交集

公司要做一个项目人员预约的功能,提交的时候要校验当前人员和所选时间段和数据库已有记录是否存在冲突。
数据库开始日期ksrq,结束日期jsrq,参数为(a,b),sql语句为
select * from tablename where (ksrq >= a AND ksrq <= b) OR (ksrq <= a AND jsrq >= b) OR (jsrq >= a AND jsrq <= b)
其实很容易理解,满足这三种情况之一即算有交集

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。