我需要在集合中返回来分页,但我只能在数组中返回,因为查询使用自然联接。 我如何使用 Laravel 集合执行此查询:
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
我使用了这段代码:
$mensagem = \DB::select( 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 ") );
最佳答案
如果您想按原样使用查询,请像这样使用 -
\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。
关于php - LARAVEL MYSQL 如何使用自然 JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46206129/