无法使用输出json_encode

时间:2016-10-04 08:21:25

标签: php mysql codeigniter

我试图通过使用'select left'来获取表中id的两个字符,我尝试使用id参数连接到另一个表,但是在执行时不运行,并以表格的形式输出结果json,但它不起作用。

我的剧本,

Controllers
        foreach($this->mymodel->getLeft()->result_array() as $row)
            {   
                $data[] = array(
                    'sub_id' => $row['sub_id'],
                    'long_id' => $row['long_id'],
                    'total' => $row['total']
                  );                
            }   
            echo json_encode($data); 

型号:

function data_alat() {
    $sql = "SELECT LEFT(tb1.id,2) AS sub_id, long_id, COUNT(*) total 
            FROM tb1 JOIN tb2 ON tb2.id = tb1.sub_id 
            GROUP BY sub_id ";

    return $this->db->query($sql);
}

我的数据库:

TB1:

field id=
BM-001,
BM-002,
BC-009,
JK-001,
LP-080,
JK-002

TB2:

field id=
BM,
BC,
JK,
LP

field long_id=
BIM,
BIC,
JIK,
LIP

我期待{“sub_id”:“BM”,“long_id”:BIM,“total”:“2”}

1 个答案:

答案 0 :(得分:1)

试试这个

$sql = "SELECT LEFT(tb1.id,2) AS sub_id, COUNT(*) total 
            FROM tb1 LEFT JOIN tb2 on left (tb1.id,2) = tb2.sub_id 
            GROUP BY sub_id ";