Questão nº 15

Questão de Tecnologia da Informação · FGV CVM 2024 (nº 15)

FGV2024Analista CVM - TI Sistemas e Desenvolvimento (Perfil 8)Tecnologia da Informação
Gabarito: Bver comentário ↓

A analista Letícia realizou a seguinte consulta em Structured Query Language (SQL):

```sql
WITH RECURSIVE anos (n) AS
(
SELECT 2020 UNION ALL
SELECT n + 1 FROM anos WHERE n < 2025
)
SELECT * FROM anos
```

Logo após, Letícia realizou outra consulta em SQL:

```sql
SELECT 2024 FROM anos
```

O sistema gerenciador de banco de dados usado por Letícia suporta o recurso Common Table Expression do SQL.
As consultas efetuadas por Letícia retornaram, respectivamente:

Resposta comentada

Gabarito Alternativa B

Uma Common Table Expression (CTE) é uma consulta nomeada temporária, como uma "tabela virtual", que existe apenas para ser usada dentro de uma única instrução SQL (SELECT, INSERT, UPDATE, DELETE). Uma CTE Recursiva é um tipo especial de CTE que pode se referir a si mesma para gerar sequências ou estruturas hierárquicas, começando com uma parte "âncora" e continuando com uma parte "recursiva" até que uma condição de parada seja atingida.

  • (A) Incorreta: A primeira consulta retorna seis tuplas, não uma.
  • (B) Correta: A primeira consulta define uma CTE recursiva anos que começa em 2020 e incrementa de 1 em 1 até 2025 (inclusive), gerando os valores 2020, 2021, 2022, 2023, 2024 e 2025. Portanto, SELECT * FROM anos retorna seis tuplas. A segunda consulta, SELECT 2024 FROM anos, tenta referenciar a CTE anos fora do escopo da instrução SQL onde ela foi definida. Uma CTE é temporária e só existe para a instrução em que foi declarada. Como a segunda consulta é uma instrução separada, a CTE anos não está mais disponível, resultando em um erro (geralmente "tabela ou visão não encontrada"). A armadilha aqui é pensar que a CTE anos persiste após a execução da primeira instrução.
  • (C) Incorreta: A primeira consulta retorna seis tuplas, não um erro, e a segunda retorna um erro, não duas tuplas.
  • (D) Incorreta: Ambas as partes estão incorretas.
  • (E) Incorreta: A segunda consulta resulta em um erro, não em duas tuplas.

Fonte: FGV CVM 2024 Analista CVM - TI Sistemas e Desenvolvimento (Perfil 8) (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