我正在构建一个系统,允许管理员添加可以在时间段内出售的资源。变量是开始时间、结束时间和间隔(x 分钟)。前端用户将访问该站点,选择资源和日期并查看可用插槽。
我可以轻松地生成一组可能的插槽,以 x 分钟的间隔从开始时间循环到结束时间。
对我来说棘手的地方是从可用插槽中排除某些时间。有标准预订 - 一次 1 个时段,但也有资源不可用的时段,因此一个预订可能占用 10 个时段。
我的想法是首先生成可能的时隙数组,然后查询数据库,删除已经预订的时隙。这将涉及将每个较长的预订分成多个块。
我想知道是否有一种纯粹的 MYSQL 方法可以做到这一点,或者至少让它尽可能高效和灵活。