私は選手とコーチの間に多対多の関係を持っています。各プレーヤーは多くのコーチを持つことができ、各コーチは多くのプレーヤーを持つことができます。
特定のコーチにリンクされているすべてのプレーヤーを回復するためのカスタム クエリを作成したいのですが、その方法が本当にわかりません。
特定のコーチにリンクされているすべてのプレーヤーを回復するカスタム クエリをリポジトリに作成する必要があります。
OSC\User\Entity\PlayerRepositoryにあるリポジトリ関数のキャンバスは次のとおりです。
public function findPlayersOfCurrentUser($user) { //The user id is the id linked to the player
return $this->_em->createQuery('
');
}
すべての多対多の関係が機能しているため、次のようなテーブル ( user_playerという名前) が生成されます。
user_id player_id
1 1
最後に、私の質問は次のとおりです: OSCUserBundle:Player内のすべてのプレーヤーを SELECT する ための SQL クエリは何ですか?$user->getId()
私は言葉で何をすべきかを知っています(
SELECT all the players from OSCUserBundle:Player WHERE id IN (SELECT all the player_id FROM user_player WHERE user_id = $user->getId()
) ただし、createQuery または createQueryBuilder 経由ではありません...