OrderByRaw(), затем orderBy() в Laravel ⇐ Php

Кемеровские программисты php общаются здесь
Anonymous
OrderByRaw(), затем orderBy() в Laravel

Сообщение Anonymous »

Можно ли использовать следующий orderByRaw(). Этот метод orderByRaw() возвращает продукты в том же порядке, что и методwhereIn(). Сейчас это только результаты в порядке orderByRaw, а не в orderBy().

Можно ли их объединить:

$ids;
$placeholders = implode(',',array_fill(0, count($ids), '?'));
Продукт:: whereIn('id', $ids)->orderByRaw("field(id,{$placeholders})" ,$ids)->orderBy('views', 'des')->orderBy('created_at', 'des ')->get();

Изменить:
Это SQL-код, который я получаю, когда выполняю toSql(). Почему это не работает?


SELECT *
FROM `products`
WHERE `id` IN ( ?, ?, ?, ?, ? )
ORDER BY Field(id, ?, ?, ?, ?, ?),
`views` DESC,
`create_at` DESC


Подробнее здесь: https://stackoverflow.com/questions/538 ... in-laravel

Вернуться в «Php»