LARAVEL MYSQL как использовать натуральный JOIN

Мне нужен возврат в коллекции для разбивки на страницы, но я могу только вернуть в массиве, потому что запрос использует естественный JOIN.
Как я могу сделать этот запрос, используя коллекции Laravel:

ВЫБЕРИТЕ mensagens. * ИЗ МЕНСАГЕНОВ ЕСТЕСТВЕННОЕ СОЕДИНЕНИЕ (ВЫБЕРИТЕ id_emissor, МАКС. (Созданный_атт) созданный_от ОТ МЕНСАГЕНОВ ГДЕ id_receptor = «. $ User_id.» GROUP BY id_emissor) t

Я использовал этот код:

$ mensagem = \ DB :: select (
DB :: raw («ВЫБРАТЬ mensagens. * ИЗ МЕНСАГЕНОВ ЕСТЕСТВЕННОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ id_emissor, MAX (made_at) made_at ИЗ МЕНСАГЕНОВ WHERE id_receptor =». $ User_id. «GROUP BY id_emissor) t»)
);

0

Решение

Если вы хотите использовать ваш запрос как есть, используйте вот так:

\DB::raw("SELECT mensagens.* FROM mensagens NATURAL JOIN ( SELECT id_emissor, MAX(created_at) created_at FROM mensagens WHERE id_receptor = ".$user_id." GROUP BY id_emissor) t");

Еще вы можете использовать Eloquent также.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]