【问题标题】:How to count two related tables using Laravel Query Builder?如何使用 Laravel Query Builder 计算两个相关表?
【发布时间】:2020-05-02 10:02:51
【问题描述】:

我的数据库中有两个表

我的第一张桌子

还有我的第二张桌子

我想统计有多少金牌会员,有多少银牌会员...我想对每个类别进行一次统计... rif 可以在列中重复但是加入的关键两张表.. 我正在使用 Query Builder,我想继续使用它。有人可以帮助我吗?

我尝试了这段代码,但没有成功

$count = DB::table('table1')
    ->join('table2', 'table1.rif', '=', 'table2.rif')
    ->select(DB::raw('category')
    ->count();

【问题讨论】:

    标签: laravel laravel-query-builder


    【解决方案1】:

    试试这个:

    use Illuminate\Support\Facades\DB;
    
    DB::table('table2')
        ->join('table1', 'table2.rif', '=', 'table1.rif')
        ->select(DB::raw('count(*) as count'), 'table1.category as category')
        ->groupBy('category')
        ->get();
    

    如果您只想计算特定类别:

    DB::table('table2')
        ->join('table1', 'table2.rif', '=', 'table1.rif')
        ->where('table1.category', 'Silver')
        ->count()
    

    请参阅Laravel docs 了解更多信息。

    【讨论】:

    • 我在哪里可以指定该代码中哪个是银,哪个是金?答案坦克
    • @LaravelOscar 每条记录都有categorycount
    • 是的,但我想为每条记录单独计数.... 一个计数为银牌,一个计数为金牌
    • @LaravelOscar 原来如此,你得到了什么?
    • 我得到了一组数字..这是所有元素的计数 55 30 17 1 7
    猜你喜欢
    • 2020-05-07
    • 2015-04-09
    • 1970-01-01
    • 2020-05-01
    • 2023-04-05
    • 2018-01-15
    • 2016-05-21
    • 2020-05-06
    • 2020-05-04
    相关资源
    最近更新 更多