Laravel 8 Eloquent orderBy: методы сортировки с примерами кода

В Laravel 8 вы можете использовать Eloquent ORM для выполнения запросов к базе данных, включая сортировку результатов с помощью метода orderBy. Вот несколько методов, которые можно использовать с примерами кода:

  1. Базовый порядок:

    $users = User::orderBy('name')->get();

    Это позволит получить всех пользователей из таблицы usersи упорядочить их по столбцу nameв порядке возрастания.

  2. По убыванию:

    $users = User::orderBy('name', 'desc')->get();

    Пользователи будут упорядочены по убыванию на основе столбца name.

  3. Порядок нескольких столбцов:

    $users = User::orderBy('last_name')->orderBy('first_name')->get();

    При этом пользователи будут упорядочены сначала по столбцу last_name, а затем по столбцу first_name.

  4. Сортировка по взаимосвязи:

    $users = User::with('posts')->orderBy('posts.created_at')->get();

    Это позволит получить пользователей вместе со связанными с ними сообщениями и упорядочить их на основе столбца created_atсообщений.

  5. Необработанные выражения:

    $users = User::orderByRaw("FIELD(status, 'active', 'pending', 'inactive')")->get();

    В этом примере демонстрируется сортировка на основе пользовательского порядка, определенного необработанным выражением.

Это всего лишь несколько примеров того, как вы можете использовать метод orderByв Laravel 8 Eloquent. Не забудьте настроить имена моделей и столбцов в соответствии с вашим конкретным приложением.