Mysql 无Foreach循环的批量更新查询雄辩-Laravel 5.1

Mysql 无Foreach循环的批量更新查询雄辩-Laravel 5.1,mysql,laravel,eloquent,Mysql,Laravel,Eloquent,嗨,我的数据库结构如下: Analytics::where('user_id', $request->get('user_id')) ->whereBetween('date', [$request->get('from_date'), $request->get('to_date')]) ->update(array('finalized' => 1)); 表:分析 现在我想批量更新数据。例如,我想选择用户_id=1的数据以及2016-03-01和201

嗨,我的数据库结构如下:

 Analytics::where('user_id', $request->get('user_id'))
->whereBetween('date', [$request->get('from_date'), $request->get('to_date')])
->update(array('finalized' => 1));
表:分析

现在我想批量更新数据。例如,我想选择用户_id=1的数据以及2016-03-01和2016-03-20之间的日期。然后我想将结果中得到的所有记录的列从0更新为1

我所做的工作如下:

 Analytics::where('user_id', $request->get('user_id'))
->whereBetween('date', [$request->get('from_date'), $request->get('to_date')])
->update(array('finalized' => 1));
但这不起作用,也没有显示任何错误。请让我知道在雄辩的帮助下我能做什么。提前谢谢


我也看到了StackoverFlow中的其他问题,但答案建议运行foreach循环,这是我不想要的。那么,有什么办法吗?那么,请建议我。再次感谢

您确定已在
分析
模型上设置了
$filleble
属性,并且它包括
最终确定的
?另外,您是否确认请求对象具有您期望的日期和用户ID

或者,您可以不使用雄辩,直接访问数据库

DB::table('analytics')
    ->where('user_id', $request->user_id)->
    ->whereBetween('date', [$request->from_date, $request->to_date])
    ->update(['finalized' => 1]);

可能是@crystalwill的复制品,我也看到了这个问题,但没有找到我真正想要的。我正在调查。谢谢你的建议