作者jomi5566 (啾咪5566)
看板Database
标题[SQL ] 时间区间中的数量
时间Sat Aug 31 08:37:27 2013
大家好
我必须要写一个系统管理某一种可被借用的资源
东西会借出又归还, 我要写的是预约系统, 让大家先查也没有数量可以借
预约单中我存了开始日期sDate, 结束日期eDate
可是问题是, 以下是订单预约时间, 假设系统中有三台设备
A--------------- B---------
C---------
这个时候如果D进来预约
A--------------- B---------
C---------
D-------------------
然後我用 SELECT (*) from `order` WHERE sDate BETWEEN D.sDate AND D.eDate
OR eDate BETWEEN D.sDate AND D.eDate
会选出3笔订单, 则3等於系统可用数量3, 就只能回没有数量可借
但是从上面那个图可以看得出来D是还有数量的
因为B会拿A还的那台, 我要怎麽做才可以处理这个情况呢?
我觉得我存的讯息好像太少了
是不是没有办法解决这个情况
不知道一般这种情况大家是用什麽方法来做的?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 12.170.66.34
※ 编辑: jomi5566 来自: 12.170.66.34 (08/31 08:37)
1F:→ noxhsu:要即时取得最新资料,查询只有该时点的值;要处理这问题要 08/31 13:09
2F:→ noxhsu:搭配使用的系统规划取即时资料,不可能查询後一直锁定 08/31 13:12