У меня есть две таблицы: игрок и игра. Я хотел бы вернуть список всех игроков независимо от того, сыграла ли их команда или нет. Я бы хотел, чтобы game_id, если их команда играла, в противном случае замените NULL.Left Outer Join не возвращает ожидаемый результат
Я думал, что это будет ЛЕВОЙ ВЗАИМОДЕЙСТВУЮЩИЙСЯ, но он возвращает только список игроков, которые на самом деле играли.
SELECT a.id, b.match_id
FROM player a
LEFT OUTER JOIN game b ON a.team_id = b.home_team_id or a.team_id = b.away_team_id
WHERE b.round = 1
Я предполагаю, что это основной материал .. извините.
В качестве альтернативы условие может быть изменен на 'COALESCE (b.round, 1) = 1 ' – Bulat
@Bulat. , , Это тонко отличается. –
@ GordonLinoff с точки зрения результата или каким образом? – Bulat