gpt4 book ai didi

mysql - Laravel wherebetween with orwherebetween

转载 作者:行者123 更新时间:2023-11-30 23:57:47 26 4
gpt4 key购买 nike

我写了一个 Laravel 查询。我在名为“可共享”的列上使用 whereBetweenorWhereBetween 以及 where 语句,它应该返回一行。
但是这个查询没有考虑 where 条件。它只用了 whereBetweenorWhereBetween。可能是什么原因。

我的问题

$childs = Program::whereIn('id', $programs_by_date)
->where('shareable', '=','1')
->wherebetween('starting_date', [$new_start_date,$new_end_date])
->orwherebetween('ending_date', [$new_start_date,$new_end_date])
->orderBy('starting_date')
->get();

->where('shareable', '=','1') 返回 0 行。可能是什么原因。

可共享类型是枚举

最佳答案

您应该将 whereBetween & orWhereBetween 包裹在 where 中。试试这个:

$childs = Program::whereIn('id', $programs_by_date)
->where('shareable', '=','1')
->where(function($query) use ($new_start_date, $new_end_date){
$query->whereBetween('starting_date', [$new_start_date,$new_end_date])
->orWhereBetween('ending_date', [$new_start_date,$new_end_date]);
})
->orderBy('starting_date')
->get();

希望这会奏效。

关于mysql - Laravel wherebetween with orwherebetween,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49875063/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com