Доброго времени суток.
$posts = self::selectRaw('users.login, posts.*, comments.id, COUNT(comments.id) as comments_count,GROUP_CONCAT(DISTINCT(categories.name)) as cat_name')
->Join('users','users.id', '=', 'posts.author')
->leftJoin('post_cat','post_cat.post_id', '=', 'posts.id')
->leftJoin('categories','categories.id', '=', 'post_cat.cat_id')
->leftJoin('comments','comments.post_id','=','posts.id')
->orderBy('posts.created_at', 'DESC')
->groupBy('posts.id')
->paginate(10);
COUNT(comments.id) считает х2 почему-то, не могу понять почему. Если в для поста 10 комментариев то результат выводит 20