sid*_*diq 4 php laravel eloquent laravel-5 laravel-5.2
我知道我可以使用此查询减少laravel中的列值
DB::table('users')->decrement('votes', 5);
Run Code Online (Sandbox Code Playgroud)
但是我想限制该值成为负值。
无论如何,laravel可以做到这一点吗?
您将需要使用原始查询。
下面的代码应该为所有支持GREATEST函数的数据库引擎解决问题:
DB::table('users')->update(['votes' => DB::raw('GREATEST(votes - 5, 0)')]);
Run Code Online (Sandbox Code Playgroud)
它将使用户表中的票数列减少5,但不会低于零-这就是GREATEST函数的作用。