我有問題,在Symfony2的一些查詢,我有3個entites的(他們簡化了一下):加入3個表中的Symfony2
class Group
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=255)
*/
protected $name;
/** @ORM\OneToMany(targetEntity="GroupMember", mappedBy="family") */
protected $groupMembers;
class GroupMember
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(name="group_member_type", type="integer")
*/
protected $groupMemberType;
/**
* @ORM\ManyToOne(targetEntity="Group", inversedBy="groupMembers")
* @ORM\JoinColumn(name="group_id", referencedColumnName="id", nullable=false)
*/
protected $group;
/**
* @ORM\ManyToOne(targetEntity="Test\UserBundle\Entity\User", inversedBy="memberships")
* @ORM\JoinColumn(name="user_id", referencedColumnName="id", nullable=false)
*/
protected $user;
用戶 - >標準FOSuserbundle用戶
我要打查詢返回當前用戶是組成員的所有組。有人能告訴我該怎麼做嗎?
這裏是我的嘗試:
SELECT g FROM (group g INNER JOIN groupmember gm ON g.id=gm.group_id) INNER JOIN fos_user u ON gm.user_id = u.id WHERE u.id = 6
但它返回
Unknown column 'g' in 'field list'
莫非你精確的實體之間的關係? – theofabry 2014-10-08 10:26:18
我更新了我的問題 – user1483208 2014-10-08 11:30:26
您沒有使用Doctrine的查詢構建器的原因? – 2014-10-08 14:50:35