Этот запрос позволит мне получить все игроки команды, данные удостоверения личности и, когда его физическое состояние равняется 2.Доктрина конструктор запросов - поиск в двух таблицах
$qb = $this->createQueryBuilder('player')
->where('player.physicalState= 2')
->join('player.team', 'team')
->addSelect('team')
->where('team.id = :id')
->setParameter('id', $teamId);
return $qb->getQuery()->execute()
Но дело в том, что: у меня есть еще один таблица OLD_TEAM. И Player имеет отношение один к многим с TEAM и OLD_TEAM. Таким образом, игрок может быть связан с TEAM или OLD_TEAM.
Так я хочу, чтобы улучшить/закончить мой запрос, чтобы иметь что-то вроде
Поиска своих игроков в команде с идентификатором й в таблице TEAM. Если этого не существует, я хочу искать то же самое, но в таблице OLD_TEAM.
Я не знаю, является ли это решение наилучшим решением для поиска, не стесняйтесь сообщать мне, существует ли более простое решение (ы).
PS: OLD_TEAM и TEAM используют одну и ту же последовательность для ПК.
Спасибо.
Вы также можете попробовать использовать другой тип соединения. Добавьте .leftJoin ('player.team', 'team'). LeftJoin ('player.old_team', 'old_team'), а затем просто посмотрите, что происходит. Но imho вы действительно должны думать, что структура данных, например. как насчет игроков, принадлежащих нескольким командам? как насчет игроков, которые были на не только двух командах? и так далее ... – tarlepp