Mysql Laravel:如何显示可用时间段的列表
制作一个Laravel项目,人们可以在该项目中为1.5小时预订一些产品 在我的控制器中,我正在查询已保留的时隙变量 接下来,我想从可用的时隙中提取这些时隙Mysql Laravel:如何显示可用时间段的列表,mysql,laravel,orm,eloquent,Mysql,Laravel,Orm,Eloquent,制作一个Laravel项目,人们可以在该项目中为1.5小时预订一些产品 在我的控制器中,我正在查询已保留的时隙变量 接下来,我想从可用的时隙中提取这些时隙 $filteredTimeSlots = DB::table('timeslots') ->join('reservations', 'timeslots.id', '=', 'reservations.timeslot_id') ->where('product_id', $product->
$filteredTimeSlots = DB::table('timeslots')
->join('reservations', 'timeslots.id', '=', 'reservations.timeslot_id')
->where('product_id', $product->id)
->get();
$timeslots = Timeslot::all();
现在,$timeslots
保存所有时隙。但这里也有那些在$filteredTimeSlots
中指定的插槽
我总共有6种产品。每个人都可以在同一时间段进行预订。这就是我添加“where”语句的原因
这可能是一个简单的解决方案,但似乎无法在Laravel文档中找到明确的解决方案
提前感谢。要查找剩余的插槽,请在插槽尚未填满的情况下使用左连接:
$timeslotsRemaining = DB::table('timeslots')
->leftJoin('reservations', 'timeslots.id', '=', 'reservations.timeslot_id')
->whereNull('reservations.timeslot_id')
->get();
要查找剩余的插槽,请使用尚未填充插槽的左连接:
$timeslotsRemaining = DB::table('timeslots')
->leftJoin('reservations', 'timeslots.id', '=', 'reservations.timeslot_id')
->whereNull('reservations.timeslot_id')
->get();
在stackoverflow上搜索“MySQL可用时隙”时,您没有找到可以转换为laravel代码的MySQL查询?。。此外,当您没有包括示例数据和预期输出时,很难帮助您“为什么我应该为我认为非常简单的SQL查询提供MCVE?”->根据我在网上找到的内容,我认为我必须以某种方式转换一个不在查询中的查询。尝试转换,但似乎没有解决问题:)当您在stackoverflow上搜索“MySQL可用时间段”时,没有找到可以转换为laravel代码的MySQL查询?。。此外,当您没有包括示例数据和预期输出时,很难帮助您“为什么我应该为我认为非常简单的SQL查询提供MCVE?”->根据我在网上找到的内容,我认为我必须以某种方式转换一个不在查询中的查询。尝试转换,但似乎无法解决此问题:)