Nosso exemplo seria representado da seguinte forma:

C4 - Recuperar a matrícula, o nome, a turma e a série de todos os alunos.

SELECT Matricula, Nome, Numero, Serie

FROM ALUNO, TURMA

WHERE ALUNO.ID_TURMA = TURMA.ID_TURMA

Neste exemplo, o uso da condição ALUNO.ID_Turma = TURMA.ID_Turma faz com que as tabelas ALUNO e TURMA sejam inter-relacionadas e o resultado comum a elas apresentado. Neste caso, a cláusula WHERE não teve um efeito “filtragem e seleção” de registros, mas sim de relacionar duas tabelas. O SGBD irá processar essa consulta identificando o ID_TURMA de cada aluno e depois percorrendo a tabela TURMA para localizar o número e a série dos alunos. O resultado esperado para essa consulta é:

Matricula Nome Numero Serie
14562/2 Thiago Ferreira Borges 5-1 5a
432/2 Isadora Luccas Fernandes 7-1 7a
4539/1 Mariana 6-1 6a
Resultado da consulta C4

Perceba um detalhe muito importante da resposta desse processamento: o aluno “Marcelo Correia Luz” por não possuir nenhuma turma, foi excluído da resposta da consulta. Isso acontece porque não há uma expressão verdadeira para a relação dele com as tuplas presentes em turma, a relação dele com turma é nula. Dessa forma, a relação dele é caracterizada como FALSA e, portanto, excluída da resposta da relação. Para resolver essa questão será necessário utilizar a cláusula LEFT JOIN que veremos futuramente.

Copyright © 2014 AIEC.