Laravel 5.6 - 在单个语句中增加多个相同的行列?
Laravel 5.6 - Increment multiple same row columns in single statement?
使用 eloquent 模型 User
,我们如何将同一行的 2 列递增 1(在单个语句中)?
这条语句有效,但仅适用于递增单个列:
User::where('id',$userId)->increment('column1');
以下两次尝试均无效:
User::where('id',$userId)->increment('column1')->increment('column2');
User::where('id',$userId)->increment(['column1','column2']);
关于如何在一条语句中解决这个问题有什么想法吗?
您可以使用原始查询和更新。例如:
User::where('id',$userId)->update([
'column1' => DB::raw('column1 + 1'),
'column2' => DB::raw('column2 + 1'),
]);
使用 eloquent 模型 User
,我们如何将同一行的 2 列递增 1(在单个语句中)?
这条语句有效,但仅适用于递增单个列:
User::where('id',$userId)->increment('column1');
以下两次尝试均无效:
User::where('id',$userId)->increment('column1')->increment('column2');
User::where('id',$userId)->increment(['column1','column2']);
关于如何在一条语句中解决这个问题有什么想法吗?
您可以使用原始查询和更新。例如:
User::where('id',$userId)->update([
'column1' => DB::raw('column1 + 1'),
'column2' => DB::raw('column2 + 1'),
]);