Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Laravel:Das Verschachteln von Abfrage-Join-Ergebnissen in einem Sub-Array

Denken Sie nicht, dass es ohne Eloquent sofort machbar ist.

Sie können den primitiven Weg gehen:

$results = DB:table('posts')
    ->leftJoin('comments', 'posts.id', '=', 'comments.post_id')
    ->select('posts.*', 'comments.*', 'comments.id as comments_id')
    ->get(); 

foreach($results as &$result) 
{ 
    $result['comment'] = [
        'id' => $result['comment_id'], 
        'comment' => $result['comment'], 
        'comment_author' => $result['comment_author']
    ]; 
    unset($result['comment_author'], $result['comment_id']);
}