少了group by语句和FROM之前少了一个空间$query = "SELECT c.code, c.chi_name, c.level, count(p.no) as total, count(j.no) as drtre "; $query.= "FROM category_j_cn c LEFT JOIN company_j_cn p ON c.code=p.code LEFT JOIN job_cn j ON c.code=j.code group by c.code, c.chi_name, c.level";
楼上说得没错,确实少了个空格不过我的$obj[total1]取出来怎么是2阿,数据库里明明只有一个 会是什么原因呢,total是正确的 $query = "SELECT c.code, c.chi_name, c.level, count(p.no) as total, count(j.no) as total1 "; $query.= "FROM category_j_cn c LEFT JOIN company_j_cn p ON c.code=p.code LEFT JOIN job_cn j ON c.code=j.code ";if(empty($code)) $query.= "GROUP BY LEFT(c.code,3)"; if(strlen($code)==3) $query.= "WHERE LEFT(c.code,3)='$code' GROUP BY LEFT(c.code,5) HAVING level=2"; if(strlen($code)==5) $query.= "WHERE LEFT(c.code,5)='$code' GROUP BY LEFT(c.code,7) HAVING level=3";
$query.= "FROM category_j_cn c LEFT JOIN company_j_cn p ON c.code=p.code LEFT JOIN job_cn j ON c.code=j.code group by c.code, c.chi_name, c.level";
会是什么原因呢,total是正确的
$query = "SELECT c.code, c.chi_name, c.level, count(p.no) as total, count(j.no) as total1 ";
$query.= "FROM category_j_cn c LEFT JOIN company_j_cn p ON c.code=p.code LEFT JOIN job_cn j ON c.code=j.code ";if(empty($code)) $query.= "GROUP BY LEFT(c.code,3)";
if(strlen($code)==3) $query.= "WHERE LEFT(c.code,3)='$code' GROUP BY LEFT(c.code,5) HAVING level=2";
if(strlen($code)==5) $query.= "WHERE LEFT(c.code,5)='$code' GROUP BY LEFT(c.code,7) HAVING level=3";
如果是group by j.no 就不会了。