Если вы правильно поняли, что StudentSchoolID в этом первом случае является первичным ключом таблицы объединения, не так ли?
Возможно, ваша разница в первом случае, когда лучший запрос будет:
select * from StudentSchool
where StudentSchoolID = 1
и StudentSchoolID предназначен для представления пары «StudentID» и «SchoolID».
Ваш запрос относится ко второму, где основной идентификатор не указан.
О том, как использовать ... ну, я не знаю. Лично я предпочитаю второе, но я тоже думаю, что оно часто зависит (кто знал!) От конкретного случая.