我试图通过使用'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”}
答案 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 ";