mysql 左表连接右表查询,当右表关联数据没有,查询所有左表结果怎么显示

项目表+订单表,需要查询所有项目的订单总额,现在订单表没有status=1的数据的话,查询结果就不显示所有项目

Project::leftjoin('orders','orders.project_id','=','project.id')
->where('project.status',1)
->where('orders.status',1)
->selectRaw('project.id,project.name,sum(orders.total) as total_money')
->groupBy('project.id')
->orderByDesc('total_money')
->paginate(10);

阅读 190
评论
    1 个回答
    • 154
    Project::leftjoin('orders', function($join) {
            $join->on('orders.project_id','=','project.id');
            $join->where('orders.status', 1);
        })
        ->where('project.status',1)
        ->selectRaw('project.id,project.name,sum(orders.total) as total_money')
        ->groupBy('project.id')
        ->orderByDesc('total_money')
        ->paginate(10);
      撰写回答

      登录后参与交流、获取后续更新提醒

      相似问题
      推荐文章