Com relação à linguagem SQL para manipulação de dados em um ...

Próximas questões
Com base no mesmo assunto
Q635360 Banco de Dados
Com relação à linguagem SQL para manipulação de dados em um banco de dados relacional, considere a existência de duas tabelas denominadas A e B e respectiva quantidade de linhas M e N, sendo M um número par e N um número ímpar. Qual das alternativas abaixo define a quantidade de linhas retornadas pela execução da consulta “SELECT * FROM A , B” ?
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Vamos discutir a questão, que se refere à consulta SQL envolvendo duas tabelas. A alternativa D - M x N é a correta.

Justificativa:

Quando você executa uma consulta SQL como SELECT * FROM A, B, está realizando um produto cartesiano entre as duas tabelas. Isso significa que todos os registros de A são combinados com todos os registros de B. Cada linha da tabela A é combinada com cada linha da tabela B, resultando em um conjunto de todas as combinações possíveis.

Analisando a quantidade de linhas:

  • M: Número de linhas na tabela A.
  • N: Número de linhas na tabela B.

Portanto, o número total de combinações, ou seja, o número de linhas retornadas, será M x N. Assim, a alternativa D - M x N é a correta.

Análise das alternativas incorretas:

  • A - M + N: Esta alternativa sugere uma soma das linhas das duas tabelas, o que não é o caso de um produto cartesiano.
  • B - (M / N) x (M / N): Esta alternativa não faz sentido no contexto de produtos cartesianos, pois sugere uma operação de divisão e multiplicação das linhas que não corresponde ao processo de junção das tabelas.
  • C - (M - N) / 2: Esta alternativa sugere uma operação de subtração e divisão, que também não se aplica ao conceito de produto cartesiano.
  • E - (M x N) / 2: Apesar de envolver a multiplicação de M e N, a divisão por 2 não tem justificativa no caso de um produto cartesiano, que gera todas as combinações possíveis.

Compreender o produto cartesiano é fundamental para questões que envolvem combinação de tabelas no SQL. É uma operação básica, mas essencial para manipulação de dados em bancos de dados relacionais.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

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

    A       B      

   M1    N1

   M2    N2

           N3

SELECT * FROM A , B = Quantidades de tuplas no plano cartesiano de (A X B) = M X N, ou no exemplo usado por mim, todos os elementos de A vezes todos os elementos de B = (M1, N1), (M1, N2), (M1, N3), (M2, N1), (M2, N2), (M2, N3).

 

Um SELECT sem o WHERE com mais de uma tabela, gera um produto cartesiano. Nesse caso, MXN

Clique para visualizar este comentário

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