Единственная причина, по которой я не буду использовать ваш второй пример:
select a.Name, b.Status
from a
inner join b
on b.ID = a.StatusID
Ваш пользователь, скорее всего, вернется и скажет: «Могу ли я увидеть все a.name, даже если у них нет записей статуса?» а не «Могу ли я увидеть все b.status, даже если у них нет записи имени?», поэтому, чтобы заранее спланировать этот пример, я бы использовал On a.StatusID = b.ID
в ожидании LEFT Outer Join. Это предполагает, что у вас может быть таблица «a» без «b».
Исправление: результат не изменится.
Это, вероятно, спорный вопрос, поскольку пользователи никогда не хотят менять свои требования.