Ad

Laravel QueryBuilder To DB::select

- 1 answer

I've got an issue with a bottleneck in Laravel eloquent. When running the logic to build the query it's very quick and simple while using eloquent, however, when it finally comes to use $query->get() (due to the number of rows, and the number of relational rows), it grinds to a halt and hits max execution time. I obviously don't want to just increase the time... And I'd prefer not to re-write all my functions to use raw queries (although I will, if I have to).

My question is, is there a way to pass a QueryBuilder sql command to DB::select or DB::raw.

I know you can use $query->toSql() - but I'm lacking the data bound values, if I could get those, I could solve this in seconds.

Ad

Answer

You can get bindings from a query builder by calling $query->getBindings().

Ad
source: stackoverflow.com
Ad