Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FGV 2021

Banco de DadosSQL
Código
fg044921
Banca
FGV
Órgão
SEFAZ-ES
Ano
2021
Nível
Superior
Cargo
Auditor Fiscal da Receita Estadual - Manhã
No contexto da instância da tabela S, considere a execução do comando SQL a seguir.SELECT * FROM S WHERE (NOT G=10 OR I=12) AND NOT (H > 100 and H < 1000) Assinale o conjunto de linhas que corresponde ao resultado produzido pelo referido comando.
  1. A10 12040 1210 12041 12
  2. B10 12040 1210 12041 1250 1497 12
  3. C50 215 1270 214 20
  4. D10 12040 1210 12041 1250 1497 1250 1498 10
  5. E50 1497 1250 1498 10
Revelar gabarito e comentário

GabaritoD — 10 12040 12 10 12041 12 50 1497 12 50 1498 10

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Comando SQL sobre a tabela S

Gabarito: letra D. A consulta retorna as linhas que satisfazem ambas as condições: (G != 10 OR I = 12) e (H <= 100 OR H >= 1000). Aplicando à instância da tabela S, obtém-se exatamente as quatro linhas da alternativa D.

Dados da tabela S:

G

H

I

10

12040

12

10

12041

12

50

1497

12

50

1498

10

70

214

20

50

215

12

Avaliação da condição WHERE:

  • Linha 1 (10,12040,12): (NOT G=10 OR I=12) = (FALSE OR TRUE) = TRUE; NOT (H>100 AND H<1000): H=12040 -> (TRUE AND FALSE)=FALSE -> NOT FALSE = TRUE. Incluída.

  • Linha 2 (10,12041,12): idem, incluída.

  • Linha 3 (50,1497,12): (TRUE OR TRUE)=TRUE; H=1497 -> (TRUE AND FALSE)=FALSE -> NOT FALSE=TRUE. Incluída.

  • Linha 4 (50,1498,10): (TRUE OR FALSE)=TRUE; H=1498 -> (TRUE AND FALSE)=FALSE -> NOT FALSE=TRUE. Incluída.

  • Linha 5 (70,214,20): (TRUE OR FALSE)=TRUE; H=214 -> (TRUE AND TRUE)=TRUE -> NOT TRUE=FALSE. Excluída.

  • Linha 6 (50,215,12): (TRUE OR TRUE)=TRUE; H=215 -> (TRUE AND TRUE)=TRUE -> NOT TRUE=FALSE. Excluída.

Portanto, as linhas resultantes são: (10,12040,12), (10,12041,12), (50,1497,12), (50,1498,10). A alternativa D é a única que apresenta esse conjunto.

Alternativa A — ❌ Incorreta

Faltam as linhas com G=50.

Alternativa B — ❌ Incorreta

Falta a linha (50,1498,10).

Alternativa C — ❌ Incorreta

Contém linhas que foram excluídas pela condição (50,215,12 e 70,214,20).

Alternativa D — ✅ Correta ⟵ GABARITO

Contém exatamente as quatro linhas resultantes.

Alternativa E — ❌ Incorreta

Faltam as linhas com G=10.

Gabarito: letra D

Link permanente: /questoes/fg044921