Как сортировать по сумме двух колонок и взять по лимину?

Рейтинг: 0Ответов: 1Опубликовано: 03.07.2023

У меня есть такая таблица на MySql. Есть проблема по сротировке результатов по сумме двух колонок. Проблема в том что запрос нормально работает пока я не задаю лимит. Но когда в запросе есть и лимит. То оно берет просто по лимиту первые строки.

Кто может подсказать как с этим бороться ?

Вот сома таблица.

введите сюда описание изображения

А это код на Laravel.

$this->model->whereHas('table1', function ($query) {
    return $query->select('*', DB::raw('A + B AS cnt'))->orderBy('cnt', 'DESC');
})->with(['table1'])->take($count)->get();

Ответы

▲ 0Принят

Спосибо большое пользователю Akina за хорошую мысль.

Вопрос решился так. С исползованием laravel orderByRaw.

Вот сам запрос.

    $this->model->orderByRaw('A + B DESC')
                ->with('user')
                ->get()->take($count);