私は多対多の関係にある2つのエンティティを持っています:
class Foo
{
/**
* @ORM\ManyToMany(targetEntity="Bar", inversedBy="foos")
* @ORM\JoinTable(name="Foo_x_Bar")
*/
protected $bars;
}
class Bar
{
/**
* @ORM\ManyToMany(targetEntity="Foo", mappedBy="bars")
*/
protected $foos;
}
結果セットで Foo と Bar インスタンスのすべてのペアを取得したいと思います。
array (size=2)
0 =>
array (size=2)
'Foo' => Foo instance
'Bar' => Bar instance
1 =>
array (size=2)
'Foo' => Foo instance
'Bar' => Bar instance
Web で説明されているいくつかの方法でそれを実行しようとしましたが、エンティティ全体を選択することはできません。このクエリで特定の列を取得できます。
SELECT f.something, b.somethingElse FROM Entity\Foo f LEFT JOIN f.bars b
しかし、SELECT ステートメントで列名を省略すると、Foo インスタンスのみが取得され、Bar インスタンスは消えます。両方のエンティティを含む結果セットを取得するにはどうすればよいですか?