Сгруппируйте красноречивые результаты по тому, существуют ли отношения, и упорядочите их по-разному. - PullRequest
0 голосов
/ 10 апреля 2019

У меня в настоящее время есть две таблицы, businesses и upgrades. Таблица обновлений содержит business_id, start_date и end_date.

Я хочу вернуть все компании, чтобы те, у которых есть активное обновление, были первыми в списке, а затем все предприятия, у которых нет обновления. Для компаний, у которых есть обновление, я бы хотел заказать их случайным образом, а для компаний, у которых их нет, я бы хотел заказать их по имени.

Отношения в моделях уже установлены.

Итак, примерно так:

Деловые круги :: groupBy ('если они обновлены) -> orderBy (' случайные, если обновлены, иначе называют asc ') -> get ();

Бизнес-модель:

public function upgrades()
{
    return $this->hasMany(Upgrade::class);
}

Обновление модели:

public function businesses()
{
    return $this->belongsto(Business::class);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...