Нужен запрос, который позволит мне добавить значение из столбца A со значением из столбца B - PullRequest
0 голосов
/ 06 июня 2018

Нужен запрос, который позволит мне добавить новые данные столбца A с последними данными в столбце B, а затем сохранить в той же таблице.

Чтобы уточнить, в таблице у меня есть столбцы с именами количе- ством кол-во_добавок и кол-во_количество.

При сохранении новых данных я хочу добавить запас нового значения для столбца кол-во_добавленных с последним значением в столбце кол-ву_счет в виденовое значение для количества столбцов осталось сохранить как часть новых данных.

Например,

Quantity_added = 2, quantity_left = 10,

amount_left = Quantity_added + amount_left

2 + 10 = 12

Новое значение для

quantity_left = 12

Пример таблицы

      id  description    quantity_added      quantity_left     created  

      1    shoes             2                   10           21-4-2018  

      2    shoes             34                  44           22-4-2018

      3    shoes             6                   50           23-4-2018

Заранее спасибо

Ответы [ 5 ]

0 голосов
/ 07 июня 2018

Спасибо всем за ваш вклад.Для достижения вышеуказанной цели, следующие коды работали для меня

 //select the last value of quantity_left
    $old_quantity = Asset::latest()->first()->quantity_left;
    $new_quantity = $request->quantity_added;

 //add it up with the new quantity_added value
    $asset->quantity_left = collect([ $old_quantity,  $new_quantity ])->sum();

. Для более подробной информации, вы можете посмотреть это https://laravel.com/docs/5.6/collections#method-sum

0 голосов
/ 06 июня 2018
     public function update(){ 
     $table=new Table;
     $last_quantity_added=Table::select('quantity_added')->orderBy('quantity_added', 'desc')->first();
     $table->quantity_added=$last_quantity_added+$quantity_added_value;
     $table->quantity_left=$quantity_added_value;
     $table->description=$desc_value;
     $table->created=$current_date;
     $table->save();
    }
0 голосов
/ 06 июня 2018

Попробуйте подобное

$data = ['Quantity_added' => 2]; // your initial data   
$data['quantity_left'] = $data['Quantity_added']; // assign Quantity_added value to quantity_left 
$model = EloquentModel::orderByDesc('primary_key')->first(['quantity_left']) 

if ($model) {
    // if has record ind db add last record quantity_left value in $data['quantity_left'] 
    $data['quantity_left'] = $model->quantity_left;
}

Model::create($data);
0 голосов
/ 06 июня 2018

В моем ответе я полагаю, что таблица была столбцом идентификатора, например:

Имя таблицы

  • Id,

  • Количество_добавлено,

  • Количество_лфт

    $ add_quantity = DB :: table ('Table_name') -> select ('Количество_added') -> где ('id','=', $ ID) -> первый ();$ add_quantity = $ add_quantity-> Quantity_added;DB :: table ('Table_name') -> increment ('amount_left', $ add_quantity, ['id' => $ id]);

Всякий раз, когда мне нужно выполнить запросы SQLв Laravel, я обращаюсь к этой странице документации https://laravel.com/docs/5.5/queries

0 голосов
/ 06 июня 2018
UPDATE `table` 
SET 
    `quantity_added` = NEW_VALUE, 
    `quantity_left` = `quantity_left` + NEW_VALUE
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...