1. 程式人生 > >資料庫思想——兩表連線迴圈查出產品個數

資料庫思想——兩表連線迴圈查出產品個數

這是啟用記錄表:

這是啟用型別表:

啟用記錄表裡面有啟用人的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>