查询构建器多于一列增量

Query builder more than one column Increment

我想通过增加他们的 All_balance、Available_balance、Credit Laravel 5.8 Query builder

来更新用户帐户详细信息

使用了一列

    $account = DB::table('accounts')
                            ->where(['user_id'=>$userId])
                            ->increment('all_balance',$amount);

我在下面试过但没有用

     $account = DB::table('accounts')
                            ->where(['user_id'=>$userId])
                            ->increment(function($increment){
                                $increment->('all_balance',$amount);
                                $increment->('available_balance',$amount);
                                $increment->('credit',$amount);
                            });

试试这个...

 $account = DB::table('accounts')
                            ->where(['user_id'=>$userId])
                            ->update([
                                'all_balance' => DB::raw('all_balance+$amount'),
                                'available_balance' =>DB::raw('available_balance+$amount'),
                                'credit' => DB::raw('credit+$amount'),
                              ]);

@Zar NI Ko Ko 我很感谢你的回复,因为它确实帮助了我,但只是因为列名和变量名 ($amount) 之间没有连接而给了我错误,所以它看到了变量作为另一列。现在一切都很好

工作代码

    $account = DB::table('accounts')
            ->where(['user_id'=>$userId])
            ->update([
                'all_balance' => DB::raw('all_balance + '.$amount.''),
                'available_balance' =>DB::raw('available_balance + '.$amount.''),
                'credit' => DB::raw('credit + '.$amount.''),
              ]);