求查询合并 更好的优化建议

浏览:746 发布日期:2019/06/30 分类:ThinkPHP6专区
三个表查询 分页 public function getLists(array $map=[],int $listRows=15){
        $data = $this->alias('a')
            ->join('member b','a.pid = b.mid','LEFT')
            ->join('customer c','a.cid = c.cid','LEft')
            ->field('a.id,a.order_id,a.subject,a.cid,a.pid')
            ->field('a.team,a.level,a.price,a.end_time,a.status')
            ->field('b.username,b.avatar,b.mobile,c.customer,c.contact,c.mobile,c.qq')
            ->where($map)
            ->order('id','desc')
            ->paginate($listRows);
        $member = new Member();
        foreach ($data->items() as $item=>$value){
            $data->items()[$item]['team'] = $member->where('mid','in',$value['team'])
                ->field('username,avatar,mobile')
                ->select();
        }
        return $data;
    }
客户表 customer
用户表 member

求查询合并 更好的优化建议,如果这样写感觉有点low,而且是api数据返回的

最佳答案
评论( 相关
后面还有条评论,点击查看>>