如何通过(开始<=日期和结束>=日期1)|| (start <= date and end >= date2) laravel 中的条件

Posted

技术标签:

【中文标题】如何通过(开始<=日期和结束>=日期1)|| (start <= date and end >= date2) laravel 中的条件【英文标题】:How to pass (start <= date1 and end >= date1) || (start <= date2 and end >= date2) condition in laravel 【发布时间】:2021-04-16 09:33:08 【问题描述】:

大家好,我想通过这样的条件: (开始 = date1) || (start = date2) 在 laravel 中。 如何通过这个查询?

$events = DB::table('christophheich_calendar_entries')->whereNull('deleted_at');

有人可以帮忙吗? 谢谢

【问题讨论】:

laravel.com/docs/8.x/queries#additional-where-clauses 【参考方案1】:

您可以使用where 语句,如下所示:

$events = DB::table('christophheich_calendar_entries')
    ->where(function($q) use($date1, $date2) 
        $q->where(function($q2) use($date1) 
            $q2->where('start', '<=', $date1)->where('end', '>=', $date1);
        )->orWhere(function($q2) use($date2) 
            $q2->where('start', '<=', $date2)->where('end', '>=', $date2);
        );
    )
    ->whereNull('deleted_at');

这是创建带有处理 where 的 or 部分的内部查询的 where 子句的方法。确保 $date1$date2 在查询之前被初始化。

【讨论】:

以上是关于如何通过(开始<=日期和结束>=日期1)|| (start <= date and end >= date2) laravel 中的条件的主要内容,如果未能解决你的问题,请参考以下文章

js验证开始日期不能大于结束日期?

通过javascript来实现 有某年第几周 得到 这周的开始日期 和结束日期,怎么写啊

js如何控制 开始日期 到 结束日期 跨月的判断?

如何通过在 SQL Server 中选择周数来获取开始日期和结束日期

DB2如何获得周起始日期,结束日期

根据不同的周开始和结束日期获取数据[重复]