Как правильно вытащить данные из ActiveRecord в Yii2

Есть таблица workers с полями id, name, surname, status, create_at. Статус может быть 1, 2, 3, 4. Create_at дата создания записи.

Нужно отсортировать так чтобы сначала шли записи с status = 1. Потом с остальными статусами, но отсортированные по дате создания.

Пробовал сделать с union. В первую выборку складывал отфильтрованных по status = 1. Во вторую выборку складывал со статусом status != 1 и orderBy(['create_by' => SORT_DESC]). Потом с помощью union объединил. $workers = $workers->union($workersFar). workersFar - это кто со статусом не равным 1

Все вроде как работает - сначала идут пользователи со статусом 1, потом остальные. Но не сортированные. Если выводить по отдельности таблицы - без union - сортировка работает. С union - таблицы склеиваются но теряется сортировка.

Сортировка тоже нужна, так же как и вывод в начале работников со статусом 1


Ответы (0 шт):