SELECT中的Doctrine子查询

时间:2014-07-19 16:18:22

标签: php symfony doctrine-orm

SELECT u FROM AcmeBundle:Users u

上述语句返回users表中的所有记录。如果我想添加其他内容,例如:

,该怎么办?
SELECT u, (
   SELECT s.name
   FROM AcmeBundle:Shop s
   ) AS shop_name
FROM AcmeBundle:Users u

执行第二个查询会抛出一个错误,即userId对于包含“u,shop_name”键的数组不存在。怎么了?

1 个答案:

答案 0 :(得分:1)

然后你可能想要像

这样的东西
SELECT u, s FROM AcmeBundle:Users u JOIN u.shop s

其中shopUser实体中引用Shop实体的属性的名称。

当您拥有User实体

时,您可以访问商店的名称
$user->getShop()->getName()