Laravel QueryBuilder. Базовый (пустой) запрос

При динамическом создании запроса есть необходимость сначала создать базовый запрос, что-то эквивалентное:

SELECT * FROM some_table

к которому в дальнешем добавятся условия и/или агрегации на основе параметров.

$query = $query->orderBy('name', 'desc')->take(10);

Нужен Model::all() без его выполнения и это метод newQuery().

2 метода создания базового построителя

Cтатический вызов. Создает новый экземпляр модели и возвращает вызов newQuery().

$builder = Model::query();

Если есть экземпляр модели:

$builder = $model->newQuery();

Похожие записи

Шпаргалка Laravel Eloquent

Статья адресована разработчикам, которые знакомы с Laravel Eloquent и хотят освежить в памяти основные моменты работы с ней.
18 октября 2017 г. в Laravel

Laravel Where Exists Clauses

Метод whereExists позволяет написать SQL-условия where exists. Метод whereExists принимает в качестве аргумента замыкание, которое получит экземпляр конструктора запросов, позволяя вам определить запрос для помещения в условие "exists":

09 октября 2018 г. в Laravel

Eloquent collection groupBy Carbon

use Carbon\Carbon;
...

$projectsGroupedByYear = $projects->groupBy(function($p) {
    return Carbon::parse($p->start_year_date)->format('Y');
});