Php 如何使用条令在Symfony上进行连接查询?
我一直坚持使用querybuilder创建连接查询。 有一个名为“人员”的表格和一个名为“空缺”的表格。如果某人链接到空缺,则person.id和空缺.id将保存在名为“Candidate”的表中。那么,我如何才能找到所有链接到空缺id 1的人 那么,我必须在哪里启动AppBundle:候选实体Php 如何使用条令在Symfony上进行连接查询?,php,sql,symfony,join,doctrine,Php,Sql,Symfony,Join,Doctrine,我一直坚持使用querybuilder创建连接查询。 有一个名为“人员”的表格和一个名为“空缺”的表格。如果某人链接到空缺,则person.id和空缺.id将保存在名为“Candidate”的表中。那么,我如何才能找到所有链接到空缺id 1的人 那么,我必须在哪里启动AppBundle:候选实体 $entity = $em ->getRepository('AppBundle:Person') ->createQueryBuilder('p') ->jo
$entity = $em
->getRepository('AppBundle:Person')
->createQueryBuilder('p')
->join('p.id', 'c')
->where('c.vacancyId= 1')
->getQuery()
->getResult();
提前谢谢你。看来你有多对多的关系。 您应该通过候选资格到人员,然后通过空缺到候选资格,将您的人员和空缺表链接起来 小示例:实体用户通过UserEngagement表连接到约定
$qb = $this->_em->createQueryBuilder()
->select('u')
->from($this->_entityName, 'u')
->join('u.userEngagements', 'ue')
->join('ue.engagement', 'en')
...
存储库中的示例:
public function getPersonVacancy($personId) {
$qb = $this->createQueryBuilder('p');
$qb->leftJoin('p.vacancy', 'v');
$qb->select('v.name', 'v.id');
$qb->where('p.id = :personId');
$qb->setParameter('personId', $personId);
return $qb ->getQuery()->getResult();
这是给你一个例子,它可能无法与复制粘贴。
此外,条令文档中解释了所有连接方法,请随意阅读所有连接方法都在Don be lazy and read;)中描述