A respeito de álgebra relacional, julgue o  seguinte  item.U...

Próximas questões
Com base no mesmo assunto
Q268233 Banco de Dados
A respeito de álgebra relacional, julgue o  seguinte  item.

Uma junção natural pode ser especificada como um produto cartesiano precedido pela operação selecionar e seguido pelas operações renomear e projetar.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa Correta: E - errado

Justificativa:

A questão aborda um conceito fundamental da álgebra relacional: a junção natural (natural join). Esta operação combina duas relações (tabelas), baseando-se em colunas de mesmo nome e descartando as duplicatas, resultando em uma nova tabela com colunas únicas para nomes comuns. A descrição fornecida na questão, entretanto, carece de precisão. A junção natural não exige explicitamente o uso de um produto cartesiano seguido pelas operações selecionar, renomear e projetar nesta ordem específica.

Na prática, a junção natural é uma operação mais direta que pode ser entendida como uma combinação do produto cartesiano, seguido de uma seleção (para combinar colunas de mesmo nome e conteúdo) e, finalmente, uma projeção (para eliminar colunas redundantes). Não é necessário renomear as colunas, pois a operação natural join implicitamente lida com colunas de mesmo nome. Portanto, a afirmação da questão subestima a complexidade do natural join e apresenta uma sequência de operações que não define corretamente o processo de execução de uma junção natural na álgebra relacional.

É importante para o aluno compreender que a junção natural tem seu mecanismo próprio e único, que é diferente de simplesmente encadear as operações de produto cartesiano, selecionar, renomear e projetar.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Junção Natural  : Retorna a combinação de tuplas de duas relações R1 e R2 que satisfazem um predicado;

O resultado da operação junção natural é uma relação com todas as combinações das tuplas na relação1 (R1) e relação2 (R2) nas quais os seus atributos em comum são iguais.

É uma operação que produz uma combinação entre as linhas de uma relação com as linhas correspondentes de outra relação, sendo em princípio correspondente a uma seleção pelos atributos de relacionamento sobre um produto cartesiano dessas relações:

A operação de junção foi criada porque esse tipo de combinação de tabelas é muito comum, facilitando com isso a escrita de expressões. A tabela resultante de uma junção tem todas as colunas da primeira tabela e todas da segunda tabela.

 

FONTE: http://www.macoratti.net/13/06/sql_arcb.htm

Uma junção natural pode ser especificada como um produto cartesiano SEGUIDO pela operação selecionar e pelas operações renomear e projetar.

A junção natural pressupõe que as tabelas operando têm atributos em comum (de mesmo nome). O produto cartesiano não permite que as tabelas operando tenham atributos de mesmo nome.

Portanto se eu for fazer um natural join que funcione, as tabelas operando têm atributos em comum. Se eu quiser usar a operação produto cartesiano, primeiro eu tenho que usar o rename (trocando os nomes dos atributos comuns em uma das tabelas), então fazer o produto, depois fazer a seleção, para eliminar as linhas em que os atributos que inicialmente eram comuns não sejam iguais (critério da junção natural, que é a igualdade dos atributos comuns) e, por fim, fazer a projeção para eliminar uma das colunas que inicialmente era comuns.

Ou seja, para estar correto, o enunciado deveria ser:

Uma junção natural pode ser especificada como um produto cartesiano precedido pela operação renomear e seguido pelas operações selecionar e projetar.

A operação JUNÇÃO pode ser definida por um PRODUTO CARTESIANO seguido por uma operação SELEÇÃO. Além disso, A definição-padrão de JUNÇÃO NATURAL exige que os dois atributos de junção (ou cada par dos atributos de junção) tenham o mesmo nome em ambas as relações. Se esse não for o caso, uma operação de rename deve ser aplicada primeiro.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo