J'essaie d'obtenir un titre sur une deuxième table (par jointure à gauche) mais mon résultat ne fournit pas la colonne de la table jointe.SQL Rejoindre dans ZF3 Expressive - ResultSet ne donne pas de colonnes jointes
Voici comment mon TableGateway ressemble à:
public function fetchCourseListWithStudyprogram()
{
$select = $this->getSql()->select();
$select->where->equalTo('course_active', 'Y');
$select->join('studyprogram', 'studyprogram.studyprogram_id = course.studyprogram_id', ['studyprogram_title'], $select::JOIN_LEFT);
$resultSet = $this->selectWith($select);
var_dump($resultSet);
return $resultSet->toArray();
}
La déclaration est se construit comme il devrait être:
public 'queryString' => string 'SELECT `course`.*, `studyprogram`.`studyprogram_title` AS `studyprogram_title` FROM `course` LEFT JOIN `studyprogram` ON `studyprogram`.`studyprogram_id` = `course`.`studyprogram_id` WHERE `course_active` = :where1' (length=214)
Quand il s'agit d'obtenir des résultats, il ne tient pas compte de la colonne « studyprogram_title » , Je suppose que c'est à cause du resultSet donné (avec CourseEntity lié)
Y at-il un moyen d'afficher le studyprogram_title sans l'ajouter à CourseEntity? Ce n'est pas vraiment une partie, donc je suppose que c'est sale si je l'ajoute là-bas.