Вернуть пустой результат запроса из Laravel Query Builder

Весьма специфичный случай. Вернуть пустой результат SQL запроса независимо от остальных условий запроса.

Необходимо задать заведомо невыполнимое условие, например идентификатор записи < 0. Естественно лучшим вариантом будет выбирать поле с индексом. Совершенно точно не стоит опираться на LIMIT 0. Постраничная навигация обязательно изменит этот параметр.

SELECT * 
FROM entities 
WHERE id < 0

Laravel Query Builder

Получение пустого множества.

/**
 * Вернуть пустое множество
 *
 * @param Builder $query
 * @return \October\Rain\Database\Builder
 */
public function scopeNoRows(Builder $query): Builder
{
    return $query->where('id', '<', '0');
}

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

Laravel migration: Specified key was too long

В Laravel 5.4 кодировкой базы данных по умолчанию стала utf8mb4. Это повлияло на приложения, использующие MySQL v5.7.7 и меньше. Во время выполненния миграций, может вывалитсья ошибка Specified key was too long.

27 августа 2017 г. в Laravel

Шпаргалка Laravel Eloquent

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