Я, возможно, сделал неправильные предположения, посмотрев на ваш запрос, но в данный момент он не имеет особого смысла ... В любом случае, я бы начал с этого.
я использую db raw, он работает
Мой запрос использует DB сырье, как это:
$products = DB::select(DB::raw('SELECT *
FROM (
SELECT a.*, b.name AS store_name, b.address
FROM products a
JOIN stores b ON b.id = a.store_id
WHERE a.category_id = '.$category_id.'
ORDER BY a.total_sold DESC, a.updated_at DESC
LIMIT '.$num.'
) AS product
GROUP BY store_id'));
Оно работает. Но я хочу изменить это с помощью laravel eloquent
Я пытаюсь так:
$products = Product::where('category_id', '=', $category_id)
->with('store')
->groupBy('store_id')
->orderBy('total_sold','desc')
->orderBy('updated_at', 'desc')
->take($num)
->get();
Это тоже работает. Но заказ по обновлению не выполнен
Как я могу решить это?