我有2个表product_category
和product_sub_category
字段的名称相同(id,name,explain,priority)
product_sub_category
的{{1}}表的外键为product_category
。
以下代码我看到的是product_category_id
字段
product_category
$select = $this->select("t1.* , t2.*")
->setIntegrityCheck(false)
->from(array("t1"=>$this->_name))
->joinInner(array("t2"=>'product_category'), 't2.id = t1.product_category_id')
->order(array('t1.priority'));
$res = $this->fetchAll($select);
return $res;
变量应为字符串$this->_name
。
为什么我看不到两个表中的所有字段?
答案 0 :(得分:1)
MySQL将返回具有相同名称的字段,因此当ZF使用名称作为索引将它们转换为数组时,后者将覆盖第一个。你需要给它们别名:
$this->select("t1.name AS category_name, t1.explain AS category_explain, t2.name AS subcategory_name")
等等。