/**
* @param Select $select
* @param string $selfColumn
* @param string $refColumn
*
* @return Select
*/
public function addJoin(Select $select, $selfColumn, $refColumn)
{
$select->isJoin(true);
$table = $select->getTable()->getName();
if (!isset($this->joins[$table])) {
$newColumn = array($selfColumn);
$select->joinCondition()->equals($refColumn, SyntaxFactory::createColumn($newColumn, $this->select->getTable()));
$this->joins[$table] = $select;
}
return $this->joins[$table];
}