В какой таблице лучше ставить внешний ключ при связи 1 к 1?
Вам нужно определить, какая сущность главная, а какая второстепенная для вашей программы. Как это будет выглядеть? Сначала заводится список тренеров а потом к ним крепятся команды? Или, наоборот, есть список команд и нужно создать им тренера? А может, это равнозначные сущности, и вы хотите иметь возможность завести список команд и список тренеров независимо друг от друга, а уже потом проставить связи? 
Ставьте внешний ключ той сущности, которая не будет иметь множественной связи с большей вероятностью. 
К примеру, если это соц сеть для тренеров, то вероятнее всего, тренер сможет добавлять список команд которых он тренировал. И тогда trainer_id пригодится в teams.
Но если ваша соцсеть вырастет и там будет база команд, которые тренер сможет выбрать из выпадающего списка (т.е. у команд тоже может быть много тренеров), то придется делать M:N. Ваш случай связи 1:1 возник только потому что ваше приложение еще недостаточно развилось. 
Также не забудьте что 1 к 1 реализуется назначением UNIQ ограничения на внешний ключ. Иначе это 1 ко многим.
Речь не об одном внешнем ключе, это два РАЗНЫХ внешних ключа, и Вам необходимо создавать оба.
P.S. это при условии, что у вас обязательно должен быть тренер привязан к команде, а команда к тренеру