首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自定义生效规则,检查日期范围是否已取

自定义生效规则,检查日期范围是否已取
EN

Stack Overflow用户
提问于 2021-11-27 12:59:02
回答 1查看 41关注 0票数 0

我必须管理房屋租赁的预订,当我进行新的预订时,开始日期和结束日期应该是免费的。

例如,如果我为客户预订了9月23日至9月28日的预订,则无法在此日期内创建另一个预订。我需要一个雄辩的查询,可以检查started_at和ends_at (的形式)没有包括在已经存在的日期之间

EN

回答 1

Stack Overflow用户

发布于 2021-11-27 13:19:47

我想我找到了一个解决方案:

代码语言:javascript
复制
$bookings = DB::table('bookings')
    ->where(function ($q) use ($start, $end) {
        $q->where('started_at', '>=', $start)
            ->where('started_at', '<=', $end);
    })
    ->orWhere(function ($q) use ($start, $end) {
        $q->where('ends_at', '>=', $start)
            ->where('ends_at', '<=', $end);
    })
    ->orWhere(function ($q) use ($start, $end) {
        $q->where('started_at', '<', $start)
            ->where('ends_at', '>', $end);
    })
    ->count();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70135004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档