Pular para o conteúdo principal

Questão de Banco de Dados — SQL — VUNESP 2023

Banco de DadosSQL
Código
vu079190
Banca
VUNESP
Órgão
TJ-RS
Ano
2023
Nível
Superior
Cargo
Analista de Tecnologia da Informação - Especialidade: Análise de Suporte
Considere a seguinte tabela de um banco de dados relacional:Loja (ID, Nome, Endereço, Cidade, Estado)O comando SQL para obter o nome e número de lojas que não estão no Estado de São Paulo é:
  1. ASELECT Nome, Sum (Estado)FROM LojaWHERE Estado != ‘São Paulo;
  2. BSELECT Nome, Count (Estado)FROM LojaWHERE NOT (Estado.’São Paulo’)
  3. CSELECT Nome, Count (Estado)FROM LojaWHERE Estado <> ‘São Paulo’;
  4. DSELECT Nome, Add (Estado)FROM LojaWHERE Estado.~’São Paulo’;
  5. ESELECT Nome, Join (Estado)FROM LojaWHERE Estado NOT IN (‘São Paulo’);
Revelar gabarito e comentário

GabaritoC — SELECT Nome, Count (Estado) FROM Loja WHERE Estado <> ‘São Paulo’;

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”.

SQL: Funções de Agregação e Filtro com WHERE

Gabarito: letra C. O comando correto para obter o nome e o número de lojas que não estão no Estado de São Paulo é SELECT Nome, Count(Estado) FROM Loja WHERE Estado <> 'São Paulo';. A função COUNT é usada para contar registros, e o operador <> (diferente) filtra as lojas cujo estado não é São Paulo.

A banca testa o conhecimento sobre funções de agregação (COUNT, SUM, etc.) e operadores de comparação no SQL.

Alternativa A — ❌ Incorreta

Usa Sum(Estado). A função SUM é para somar valores numéricos, não para contar registros. Para contagem, deve-se usar COUNT. O operador != é aceito em alguns SGBDs, mas a função errada invalida a alternativa.

Alternativa B — ❌ Incorreta

Apresenta erro de sintaxe em NOT (Estado.'São Paulo'). A forma correta para negação seria WHERE Estado <> 'São Paulo' ou WHERE NOT (Estado = 'São Paulo'). A expressão Estado.'São Paulo' não é válida.

Alternativa C — ✅ Correta ⟵ GABARITO

Utiliza Count(Estado) para contar as lojas, e WHERE Estado <> 'São Paulo' para filtrar as que não estão em São Paulo. A sintaxe está correta e atende ao comando solicitado.

Alternativa D — ❌ Incorreta

Usa Add(Estado). ADD não é uma função de agregação no SQL. Além disso, Estado.~’São Paulo’ não é uma sintaxe válida para comparação.

Alternativa E — ❌ Incorreta

Usa Join(Estado). JOIN é uma cláusula para combinar tabelas, não uma função de agregação. Embora Estado NOT IN ('São Paulo') esteja correta semanticamente, a função JOIN está incorreta.

PEGA ESSA DICA!

Lembre-se: COUNT conta registros (linhas ou valores não nulos); SUM soma valores numéricos. Para filtrar antes da agregação, use WHERE; para filtrar após agrupamento, use HAVING.

Gabarito: letra C

Link permanente: /questoes/vu079190