/** * Adds a JOIN clause to the query using the CustomerTitle relation * * @param string $relationAlias optional alias for the relation * @param string $joinType Accepted values are null, 'left join', 'right join', 'inner join' * * @return ChildCustomerTitleI18nQuery The current query, for fluid interface */ public function joinCustomerTitle($relationAlias = null, $joinType = 'LEFT JOIN') { $tableMap = $this->getTableMap(); $relationMap = $tableMap->getRelation('CustomerTitle'); // create a ModelJoin object for this join $join = new ModelJoin(); $join->setJoinType($joinType); $join->setRelationMap($relationMap, $this->useAliasInSQL ? $this->getModelAlias() : null, $relationAlias); if ($previousJoin = $this->getPreviousJoin()) { $join->setPreviousJoin($previousJoin); } // add the ModelJoin to the current object if ($relationAlias) { $this->addAlias($relationAlias, $relationMap->getRightTable()->getName()); $this->addJoinObject($join, $relationAlias); } else { $this->addJoinObject($join, 'CustomerTitle'); } return $this; }
/** * Adds a JOIN clause to the query using the GoogleshoppingAccount relation * * @param string $relationAlias optional alias for the relation * @param string $joinType Accepted values are null, 'left join', 'right join', 'inner join' * * @return ChildGoogleshoppingProductSynchronisationQuery The current query, for fluid interface */ public function joinGoogleshoppingAccount($relationAlias = null, $joinType = Criteria::INNER_JOIN) { $tableMap = $this->getTableMap(); $relationMap = $tableMap->getRelation('GoogleshoppingAccount'); // create a ModelJoin object for this join $join = new ModelJoin(); $join->setJoinType($joinType); $join->setRelationMap($relationMap, $this->useAliasInSQL ? $this->getModelAlias() : null, $relationAlias); if ($previousJoin = $this->getPreviousJoin()) { $join->setPreviousJoin($previousJoin); } // add the ModelJoin to the current object if ($relationAlias) { $this->addAlias($relationAlias, $relationMap->getRightTable()->getName()); $this->addJoinObject($join, $relationAlias); } else { $this->addJoinObject($join, 'GoogleshoppingAccount'); } return $this; }
/** * Adds a JOIN clause to the query * Infers the ON clause from a relation name * Uses the Propel table maps, based on the schema, to guess the related columns * Beware that the default JOIN operator is INNER JOIN, while Criteria defaults to WHERE * Examples: * <code> * $c->join('Book.Author'); * => $c->addJoin(BookTableMap::AUTHOR_ID, AuthorTableMap::ID, Criteria::INNER_JOIN); * $c->join('Book.Author', Criteria::RIGHT_JOIN); * => $c->addJoin(BookTableMap::AUTHOR_ID, AuthorTableMap::ID, Criteria::RIGHT_JOIN); * $c->join('Book.Author a', Criteria::RIGHT_JOIN); * => $c->addAlias('a', AuthorTableMap::TABLE_NAME); * => $c->addJoin(BookTableMap::AUTHOR_ID, 'a.ID', Criteria::RIGHT_JOIN); * </code> * * @param string $relation Relation to use for the join * @param string $joinType Accepted values are null, 'left join', 'right join', 'inner join' * * @return $this|ModelCriteria The current object, for fluid interface */ public function join($relation, $joinType = Criteria::INNER_JOIN) { // relation looks like '$leftName.$relationName $relationAlias' list($fullName, $relationAlias) = self::getClassAndAlias($relation); if (false === strpos($fullName, '.')) { // simple relation name, refers to the current table $leftName = $this->getModelAliasOrName(); $relationName = $fullName; $previousJoin = $this->getPreviousJoin(); $tableMap = $this->getTableMap(); } else { list($leftName, $relationName) = explode('.', $fullName); $shortLeftName = self::getShortName($leftName); // find the TableMap for the left table using the $leftName if ($leftName === $this->getModelAliasOrName() || $leftName === $this->getModelShortName()) { $previousJoin = $this->getPreviousJoin(); $tableMap = $this->getTableMap(); } elseif (isset($this->joins[$leftName])) { $previousJoin = $this->joins[$leftName]; $tableMap = $previousJoin->getTableMap(); } elseif (isset($this->joins[$shortLeftName])) { $previousJoin = $this->joins[$shortLeftName]; $tableMap = $previousJoin->getTableMap(); } else { throw new PropelException('Unknown table or alias ' . $leftName); } } $leftTableAlias = isset($this->aliases[$leftName]) ? $leftName : null; // find the RelationMap in the TableMap using the $relationName if (!$tableMap->hasRelation($relationName)) { throw new UnknownRelationException(sprintf('Unknown relation %s on the %s table.', $relationName, $leftName)); } $relationMap = $tableMap->getRelation($relationName); // create a ModelJoin object for this join $join = new ModelJoin(); $join->setJoinType($joinType); if (null !== $previousJoin) { $join->setPreviousJoin($previousJoin); } $join->setRelationMap($relationMap, $leftTableAlias, $relationAlias); // add the ModelJoin to the current object if (null !== $relationAlias) { $this->addAlias($relationAlias, $relationMap->getRightTable()->getName()); $this->addJoinObject($join, $relationAlias); } else { $this->addJoinObject($join, $relationName); } return $this; }
/** * Adds a JOIN clause to the query using the RoutineRelatedByPerformanceMusicAndTimingStatisticId relation * * @param string $relationAlias optional alias for the relation * @param string $joinType Accepted values are null, 'left join', 'right join', 'inner join' * * @return $this|ChildPerformanceStatisticQuery The current query, for fluid interface */ public function joinRoutineRelatedByPerformanceMusicAndTimingStatisticId($relationAlias = null, $joinType = Criteria::LEFT_JOIN) { $tableMap = $this->getTableMap(); $relationMap = $tableMap->getRelation('RoutineRelatedByPerformanceMusicAndTimingStatisticId'); // create a ModelJoin object for this join $join = new ModelJoin(); $join->setJoinType($joinType); $join->setRelationMap($relationMap, $this->useAliasInSQL ? $this->getModelAlias() : null, $relationAlias); if ($previousJoin = $this->getPreviousJoin()) { $join->setPreviousJoin($previousJoin); } // add the ModelJoin to the current object if ($relationAlias) { $this->addAlias($relationAlias, $relationMap->getRightTable()->getName()); $this->addJoinObject($join, $relationAlias); } else { $this->addJoinObject($join, 'RoutineRelatedByPerformanceMusicAndTimingStatisticId'); } return $this; }
/** * Adds a JOIN clause to the query using the КалендарьRelatedByфактическаядатаустранения relation * * @param string $relationAlias optional alias for the relation * @param string $joinType Accepted values are null, 'left join', 'right join', 'inner join' * * @return $this|ChildПредписанияQuery The current query, for fluid interface */ public function joinКалендарьRelatedByфактическаядатаустранения($relationAlias = null, $joinType = Criteria::LEFT_JOIN) { $tableMap = $this->getTableMap(); $relationMap = $tableMap->getRelation('КалендарьRelatedByфактическаядатаустранения'); // create a ModelJoin object for this join $join = new ModelJoin(); $join->setJoinType($joinType); $join->setRelationMap($relationMap, $this->useAliasInSQL ? $this->getModelAlias() : null, $relationAlias); if ($previousJoin = $this->getPreviousJoin()) { $join->setPreviousJoin($previousJoin); } // add the ModelJoin to the current object if ($relationAlias) { $this->addAlias($relationAlias, $relationMap->getRightTable()->getName()); $this->addJoinObject($join, $relationAlias); } else { $this->addJoinObject($join, 'КалендарьRelatedByфактическаядатаустранения'); } return $this; }
/** * Adds a JOIN clause to the query using the Author relation. * * @param string $relationAlias optional alias for the relation * @param string $joinType Accepted values are null, 'left join', 'right join', 'inner join' * @return $this|BookQuery The current query, for fluid interface */ public function joinAuthor($relationAlias = null, $joinType = Criteria::LEFT_JOIN) { $entityMap = $this->getEntityMap(); $relationMap = $entityMap->getRelation('Author'); // create a ModelJoin object for this join $join = new ModelJoin(); $join->setJoinType($joinType); $join->setRelationMap($relationMap, $this->useAliasInSQL ? $this->getEntityAlias() : null, $relationAlias); if ($previousJoin = $this->getPreviousJoin()) { $join->setPreviousJoin($previousJoin); } // add the ModelJoin to the current object if ($relationAlias) { $this->addAlias($relationAlias, $relationMap->getRightEntity()->getName()); $this->addJoinObject($join, $relationAlias); } else { $this->addJoinObject($join, 'Author'); } return $this; }
/** * Adds a JOIN clause to the query using the LocalizationRelatedByExtLanguageId relation * * @param string $relationAlias optional alias for the relation * @param string $joinType Accepted values are null, 'left join', 'right join', 'inner join' * * @return $this|ChildLanguageQuery The current query, for fluid interface */ public function joinLocalizationRelatedByExtLanguageId($relationAlias = null, $joinType = Criteria::LEFT_JOIN) { $tableMap = $this->getTableMap(); $relationMap = $tableMap->getRelation('LocalizationRelatedByExtLanguageId'); // create a ModelJoin object for this join $join = new ModelJoin(); $join->setJoinType($joinType); $join->setRelationMap($relationMap, $this->useAliasInSQL ? $this->getModelAlias() : null, $relationAlias); if ($previousJoin = $this->getPreviousJoin()) { $join->setPreviousJoin($previousJoin); } // add the ModelJoin to the current object if ($relationAlias) { $this->addAlias($relationAlias, $relationMap->getRightTable()->getName()); $this->addJoinObject($join, $relationAlias); } else { $this->addJoinObject($join, 'LocalizationRelatedByExtLanguageId'); } return $this; }