Mysql 我不能用第二条把两张桌子连在一起
这就是我得到的:Mysql 我不能用第二条把两张桌子连在一起,mysql,symfony,doctrine-orm,Mysql,Symfony,Doctrine Orm,这就是我得到的: $queryBuilder = $this->createQueryBuilder('a')->select()->where('a.id = ?0')->setParameters(array($id)); $queryBuilder->leftJoin('Doctrine\Entity\AccommodationUser', 'b'); $queryBuilder->leftJoin('Doctrine\Entity\Accommo
$queryBuilder = $this->createQueryBuilder('a')->select()->where('a.id = ?0')->setParameters(array($id));
$queryBuilder->leftJoin('Doctrine\Entity\AccommodationUser', 'b');
$queryBuilder->leftJoin('Doctrine\Entity\AccommodationContact', 'c');
这不起作用,我得到:[语法错误]第0行,第97列:错误:预期的文字,得到'JOIN'错误消息。但是如果我试着一个接一个地做
$queryBuilder = $this->createQueryBuilder('a')->select()->where('a.id = ?0')->setParameters(array($id));
$queryBuilder->leftJoin('Doctrine\Entity\AccommodationContact', 'c');
或
它确实有用 $queryBuilder->leftJoin('a.实体中属性的名称,'b') $queryBuilder->leftJoin('a.实体中属性的名称,'b') 原则在join语句中不使用类名。如果要加入另一个表,则需要使用表单
alias.property
$queryBuilder
->select('u')
->from('users', 'u')
->leftJoin('u', 'phonenumbers', 'p', 'u.id = p.user_id')
来源:原则在join语句中不使用类名。如果要加入另一个表,则需要使用表单
alias.property
$queryBuilder
->select('u')
->from('users', 'u')
->leftJoin('u', 'phonenumbers', 'p', 'u.id = p.user_id')
来源:有兴趣了解为什么我需要一次“条令\实体\住宿用户”,然后是“住宿用户”,如果它位于实体存储库中,您不需要从中指定
,
,因为它是从($entityName)选择($alias)->的快捷方式`-如果您直接在实体管理器上调用createQueryBuilder
,您需要指定要从中选择的实体。感兴趣的是为什么我需要一次“条令\实体\调节器”,然后是“调节器”,如果它在实体存储库中,您不需要从中指定,因为它是“选择($alias)”的快捷方式->from($entityName)`-如果直接在实体管理器上调用createQueryBuilder
,则需要指定要从中选择的实体。