 
                        我的数据库中有一个包含行数的详细信息表。
见下图。分为两行,一列中有 1250、1250 卢比。 我总共显示了2500。但是当用户想要使用全部总量时我想更新两列中的数据,如何在 laravel 中更新这两行?
$wallet_details = tbl_wallet_detail::where('wd_parent_id', $usewallet->wm_id)
    ->whereMonth('tbl_wallet_details.wd_start_date', date('m'))
    ->whereYear('tbl_wallet_details.wd_start_date', date('Y'))->first();
$wallet_details->wd_used_amount = $wallet_details->wd_used_amount + $request->usewallet;
$wallet_details->wd_remaining_amount = $wallet_details->wd_remaining_amount - $request->usewallet;
$wallet_details->save();
            Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
我不知道您的用例的所有细节(例如您如何获取
用户已使用的量),但是,以下概述了解决您的问题的一种方法。我为此示例创建了一个
Wallet模型和关联表,并在其上定义了一个used列来表示已使用的金额,以及类似的remaining 列。显然,您可以用您的具体信息替换这些内容。$wallet = \App\Models\Wallet::where('user_id', 1) ->selectRaw('sum(used) as total') ->groupBy('used') ->first(); $remaining = $wallet->total - 1500; \App\Models\Wallet::where('user_id', 1) ->update([ 'remaining' => $remaining / $wallet->count() ]);用户的used字段值进行求和(总计)$remaining金额用户每一行的剩余列如上所述,如何从表中获取相关行取决于您,使用
user_id只是一个示例,但您可以使用transaction id或其他对您的用例有意义。