数据库思想——两表连接循环查出产品个数

这是激活记录表:

这是激活类型表:

激活记录表里面有激活人的id,我想查激活人光头强激活了多少合伙人,多少一星酵王,多少二星酵王……

在不写死的情况下怎么循环查出当前用户每个产品类型都激活了多少人呢?

控制器写法(tp3):

    public function goodsnumber()
    {
        $id=session('ids');         //获取当前用户的Id

        //查询当前用户激活的每个等级的个数
        $sql=M('activatelog')
            ->join('left join activetype on activatelog.dengji=activetype.a_id')
            ->field('a_type,count(dengji)')
            ->group('a_type')
            ->where(['id'=>$id])
            ->select();

        $this->assign('data',$sql);
        return $this->display('goodsnumber');
    }

让激活类型表的a_id和激活记录表的dengji进行相连,查类型名称,和每个类型个数的字段,在通过类型进行分组查询即可!

视图写法(tp3):

    <foreach name='data' item='val'>
        <div class="list_show">
            <ul class="clearfix">
                <li>
                    <div style="width: 50%">
                        {$val['a_type']}
                    </div>
                    <div style="width: 50%">
                        {$val.count(dengji)}
                    </div>
                </li>
            </ul>
        </div>
    </foreach>

猜你喜欢

转载自blog.csdn.net/qq_42249896/article/details/84527919