Is there any Difference between get() and select() method when using laravel eloquent model. Which method is faster?
Yes there is a difference. select()
is only for defining which columns you want. get()
is for actually getting the result (> executing the query) and it also allows you to specify columns.
DB::table('foo')->select(array('bar'));
Will not execute anything. You still need get()
for that
DB::table('foo')->select(array('bar'))->get();
Now you receive a result with only the bar
column.
The same can be done this way:
DB::table('foo')->get(array('bar'));
So syntax-wise get()
alone is faster (meaning shorter) while performance wise you won't notice any difference.
Another little difference: with select()
you can use the list syntax
select('foo', 'bar', 'etc', 'whatever')
and with get()
you have to use an array
get(array('foo', 'bar', 'etc', 'whatever'))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With