directly increment or decrement number update from column using Laravel Eloquent

Viewed 4693

I have a query where in I use Eloquent for finding the ID but what I need is to directly subtract inside the eloquent query ? same as in Query Builder,

Documentation code

$flight = App\Flight::find(1);

$flight->name = 'New Flight Name';

$flight->save();

What I need is to directly to substract

$flight = App\Flight::find(1);

$flight->value =- 1;

$flight->save();
2 Answers

use laravel increment() or decrement() method see

App\Flight::find(1)->decrement('value',1);

second way u can achieve by update query

 App\Flight::where('id', 1)->update(['value' => \DB::raw('value - 1')]);

you need to do this

$flight = App\Flight::find(1);

$flight->value = $flight->value-1;

$flight->save();

hope it helps! :)

Related