Olá,
Na primeira aula, no exercício para retornar alunos sem matrícula é utilizada a seguinte query:
"select a.nome from aluno a where not exists (select m.id from matricula m where m.aluno_id = a.id);"
Notei que o retorno da sub-query (m.id )aparenta não se relacionar diretamente com a tabela "aluno", e se alterarmos para m.tipo, m.data, ou qualquer outra coluna existente em matrícula o resultado da query principal não é alterada.
Logo, cheguei a conclusão que pelo fato de não estarmos utilizando "join", quem define o retorno da sub-query para a query principal é a igualdade m.aluno_id = a.id, onde a.id se relaciona diretamente com a tabela aluno.
Essa constatação é verdadeira?
Obs: é péssima a didática dessa primeira aula do curso de MySQL II. Principalmente quando comparada a todas as aulas do curso MySQL I, que apresentou uma ótima didática e coerência em todo conteúdo.