Мне любопытно услышать, какова Ваша альтернатива маркировкам. Я думаю, что это в значительной степени собирается свести к аргументу "возврата как можно раньше" по сравнению с "использованием переменную, чтобы содержать возвращаемое значение, и только возвратиться в конце".
Маркировки являются довольно стандартными, когда у Вас есть вложенные циклы. Единственным путем они действительно уменьшаются, удобочитаемость - когда другой разработчик никогда не видел их прежде и не понимает то, что они имеют в виду.
Вы используете внешние объединения, когда вам нужно всех результатов из одной из таблиц объединения, независимо от того, есть ли соответствующая строка в другой таблице или нет.