Questão nº 65

Questão de Administração de Banco de Dados · FGV MPAL 2018 (nº 65)

FGV2018Analista do Ministério Público - Administrador de Banco de DadosAdministração de Banco de Dados
Gabarito: Ever comentário ↓

Considere a tabela teste, com uma coluna apenas, intitulada numero, contendo sete registros, com os números 1, 2, 3, 3, 4, 4, 5, um em cada linha.

Considere ainda que os quatro comandos SQL, a seguir, tenham sido executados, em bloco, no MS SQL Server ou no Oracle,

```
select distinct from teste;
select
from teste union select * from teste;
select distinct numero from teste;
select numero from teste group by numero;
```

Desconsiderando eventuais inversões na ordem em que os valores são apresentados, assinale a conclusão correta com relação à equivalência dos resultados dessa execução.

Resposta comentada

Gabarito Alternativa E

`DISTINCT`, `UNION` (sem `ALL`), e `GROUP BY` são comandos SQL usados para remover duplicatas e obter valores únicos de uma coluna ou conjunto de colunas em uma consulta.

(A) Incorreta: Todos os comandos produzem o mesmo conjunto de valores únicos (1, 2, 3, 4, 5).
(B) Incorreta: Todos os comandos produzem o mesmo conjunto de valores únicos. A armadilha da banca aqui é que muitos confundem `UNION` com `UNION ALL`; `UNION` por padrão já remove as linhas duplicadas, agindo como um `DISTINCT`.
(C) Incorreta: Todos os comandos produzem o mesmo conjunto de valores únicos.
(D) Incorreta: Todos os quatro comandos produzem o mesmo resultado.
(E) Correta: Todos os comandos listados, para a tabela e dados fornecidos, resultam no mesmo conjunto de valores únicos (1, 2, 3, 4, 5), pois `DISTINCT` (explícito ou implícito no `UNION`) e `GROUP BY` têm o efeito de retornar apenas os valores não repetidos da coluna `numero`.

Fonte: FGV MPAL 2018 Analista do Ministério Público - Administrador de Banco de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho