簡體   English   中英

Codeigniter活動記錄查詢數

[英]Codeigniter active record query count

在我的項目中,我有4張桌子。 一種叫做CallsProjectsProductsUsers

呼叫有2個FK( project_iduser_id ),而Projects有一個FK( product_id )。

我正在嘗試查詢表Calls ,我想知道已經從每個運營商處收到了每種產品的呼叫數量。

我正在嘗試查詢如下內容:

[{"name":"User1","Project1":"120","Project2":"10,"Project3":"140...}
{"name":"User2","Project1":"80","Project2":"60,"Project3":"14...}]

我猜你是什么意思

$this->db->select('count(P.product_id) as total_product ,CL.project_id, CL.user_id, P.project_name')
            ->from('Calls CL')
            ->join('Projects P', 'P.project_id=CL.project_id')
            ->group_by('CL.project_id, CL.user_id')
            ->get();

現在,您可以編寫一個php腳本循環遍歷結果以制作json

    $index = 0;
    $user_data = array();
    $user_key = array();
    foreach ($result as $row) {
        if(!isset($user_key[$row['user_id']])){
            $user_key[$row['user_id']] = $index;
            $index++;
        }
        $user_data[$user_key[$row['user_id']]]['user_name'] = $row['user_name'];
        $user_data[$user_key[$row['user_id']]][$row['project_name']] = $row['total_product'];
    } 

我沒有測試代碼,但應該可以

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM