これを翻訳してlaravelクエリビルダでどのように使用することができますか? laravelで他の値に基づくLaravelの更新
MYSQL
update mytable
set val = val +1
where id = 1
これを翻訳してlaravelクエリビルダでどのように使用することができますか? laravelで他の値に基づくLaravelの更新
MYSQL
update mytable
set val = val +1
where id = 1
てみ
$res = DB::table('mytable')
->update(['val' => ?]);
ありがとう:
DB::table('mytable')->where('id',1)->increment('val');
increment
方法があれば、2番目のパラメータとして合計する金額を受け入れますあなたはval = val + 2
を実行する必要があります->increment('val', 2)
を使用することができます。
を基準としてこれを参照してください:あなたはインクリメントよりも複雑な計算をやっている場合ではhttps://laravel.com/api/5.3/Illuminate/Database/Eloquent/Builder.html#method_increment
を、あなたもこのような何かすることができますDB::raw
に注意してください
DB::table('mytable')->where('id',1)->update(['val' => DB::raw('val * 3')]);
を - それはですあなたのためにユーザー入力から逃れることはありません。
実際、非常に雄弁です! 私はapiでこれを見落としました:X ありがとう – xhallix
喜んでそれが助け! –
問題を解決した場合は、回答を受け入れてください –