我目前正在使用以下代码
$select = $this->select()
->setIntegrityCheck(false)
->from(array('st' => $this->_name))
->join(array('sp' => 'staff_permissions'), 'sp.staff_id = st.id and sp.pool_id = ' . $pool_id )
->join(array('p' => 'permissions'), 'p.id = sp.permission_id')
->where('staff_id = ?', $staff_id);
return $this->fetchAll($select)->toArray();
它结合了三个表并返回结果。'st' 表对应一个谱表(所以一行),另外两个表对应多行。所以我希望得到一个对象,这样其他两个表就是对象内的数组。
举个例子,我返回 $row,所以 $row->first_name 是名称,但 $row->permission_id 是一个包含所有 id 的数组。
可以使用 JOIN 子句来完成吗?