我知道我们可以使用Laravel查询构建器的update()
方法进行批量更新:
DB::table('my_table')
->where('created_at', '>=', '2000-01-01')
->update(['column' => 10]);
这相当于以下查询:
UPDATE my_table SET column = 10 WHERE created_at >= '2000-01-01'
如果我想将该列的值增加10,而不是设置一个固定值,该怎么办?
这就是我在SQL中的意思:
UPDATE my_table SET column = column + 10 WHERE created_at >= '2000-01-01'
1条答案
按热度按时间kyks70gy1#
你可以简单地使用
Db::raw
方法:更多信息:https://laravel.com/docs/9.x/queries#raw-expressions
其他解决方案,请使用增量方法(https://laravel.com/docs/9.x/queries#increment-and-decrement):