Mysql 如何使用Laravel的fluent查询生成器选择计数?

Mysql 如何使用Laravel的fluent查询生成器选择计数?,mysql,activerecord,fluent,laravel,eloquent,Mysql,Activerecord,Fluent,Laravel,Eloquent,下面是我使用fluent query builder进行的查询 $query = DB::table('category_issue') ->select('issues.*') ->where('category_id', '=', 1) ->join('issues', 'category_issue.issue_id', '=', 'issues.id') ->left_join('issue_

下面是我使用fluent query builder进行的查询

    $query = DB::table('category_issue')
        ->select('issues.*')
        ->where('category_id', '=', 1)
        ->join('issues', 'category_issue.issue_id', '=', 'issues.id')
        ->left_join('issue_subscriptions', 'issues.id', '=', 'issue_subscriptions.issue_id')
        ->group_by('issues.id')
        ->order_by(DB::raw('COUNT(issue_subscriptions.issue_id)'), 'desc')
        ->get();
如您所见,我是按联接表中的计数排序的。这很好用。但是,我希望将此计数与我的选择一起返回

下面是我的原始续集查询,运行良好

Select issues.*, COUNT(issue_subscriptions.issue_id) AS followers 
FROM category_issue JOIN Issues ON category_issue.issue_id = issues.id 
LEFT JOIN issue_subscriptions ON issues.id = issue_subscriptions.issue_id
WHERE category_issue.category_id = 1
GROUP BY issues.id
ORDER BY followers DESC
我将如何使用Laravel的fluent查询生成器进行此选择?我知道我可以使用原始sql查询,但如果可能的话,我希望避免这种情况。任何帮助都将不胜感激,提前感谢

$count = DB::table('category_issue')->count();
将为您提供项目的数量


有关更多详细信息,请查看中的Fluent Query Builder部分。

您可以在select中使用数组来定义更多列,也可以使用DB::raw将其别名化为followers。应该是这样的:

$query=DB::表“类别问题” ->选择数组'issues.*',DB::raw'COUNTissue\u subscriptions.issue\u id as followers' ->其中'category_id','=',1 ->加入'issues','category'u issue.issue'id','=','issues.id' ->左键联接'issue'u订阅','issues.id','=','issue'u订阅.issue'id' ->按“issues.id”分组 ->按“追随者”、“描述”排序 ->得到;
啊,是的,我知道这一点。除此之外,我希望在一个类似于我发布的原始续集的查询中完成它。这种方法需要我循环遍历数据,并对每一行进行计数。每一行的计数可以也将不同。还有其他想法吗?谢谢你的帮助!你如何计算访问次数$计数[0]->计数?@Silver89就像这样:echo$count。