How to insert multiple rows from a single query using eloquent/fluent How to insert multiple rows from a single query using eloquent/fluent sql sql

How to insert multiple rows from a single query using eloquent/fluent


It is really easy to do a bulk insert in Laravel using Eloquent or the query builder.

You can use the following approach.

$data = [    ['user_id'=>'Coder 1', 'subject_id'=> 4096],    ['user_id'=>'Coder 2', 'subject_id'=> 2048],    //...];Model::insert($data); // Eloquent approachDB::table('table')->insert($data); // Query Builder approach

In your case you already have the data within the $query variable.


using Eloquent

$data = array(    array('user_id'=>'Coder 1', 'subject_id'=> 4096),    array('user_id'=>'Coder 2', 'subject_id'=> 2048),    //...);Model::insert($data);


It is really easy to do a bulk insert in Laravel with or without the query builder.You can use the following official approach.

Entity::upsert([    ['name' => 'Pierre Yem Mback', 'city' => 'Eseka', 'salary' => 10000000],    ['name' => 'Dial rock 360', 'city' => 'Yaounde', 'salary' => 20000000],    ['name' => 'Ndibou La Menace', 'city' => 'Dakar', 'salary' => 40000000]], ['name', 'city'], ['salary']);