← Questões de Banco de Dados

Banco de Dados · FGV · 2022

Questão comentada de Banco de Dados

No MySQL, considere duas tabelas, T1 e T2. As duas tabelas possuem uma coluna A definida como chave primária (primary key). T1 tem 1000 linhas, T2 tem 400 linhas. Com essas tabelas, foi executado o comando SQL a seguir: SELECT T1.A, T2.A FROM T1 CROSS JOIN T2 Excetuada a linha de títulos, assinale a estimativa mais precisa sobre o número de linhas retornadas no resultado.

Gabarito: A

O comando CROSS JOIN faz o produto cartesiano entre as tabelas: cada linha de T1 é combinada com cada linha de T2. Então, se T1 tem 1000 linhas e T2 tem 400, o resultado terá 1000 x 400 = 400.000 linhas. Aqui não importa o conteúdo das colunas A, nem o fato de serem chave primária, porque o CROSS JOIN não faz comparação nem elimina duplicidades. Ele simplesmente empilha todas as combinações possíveis, como quem junta cada peça de um conjunto com cada peça do outro. Por isso o gabarito A está correto: o número é exato, não uma estimativa, e depende apenas da quantidade de linhas nas tabelas.

Continue treinando

Questões relacionadas