Pular para o conteúdo principal

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

Banco de DadosSQL
Código
fc060823
Banca
FCC
Órgão
TJ-SC
Ano
2021
Cargo
Analista de Sistemas
Para exibir o número de diferentes nomes de departamentos (nomeDepartamento) a partir da tabela TabDepartamentos, suprimindo duplicações, utiliza-se a instrução SQL:SELECT
  1. ACOUNT(nomeDepartamento) FROM TabDepartamentos NOT REPEAT;
  2. BCOUNT(DISTINCT nomeDepartamento) FROM Departamentos;
  3. CSUM(nomeDepartamento) FROM TabDepartamentos NO-REPEAT;
  4. DCOUNT(nomeDepartamento) FROM TabDepartamentos;
  5. EDISTINCT nomeDepartamento FROM TabDepartamentos;
Revelar gabarito e comentário

GabaritoB — COUNT(DISTINCT nomeDepartamento) FROM Departamentos;

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: Contagem de valores distintos com COUNT(DISTINCT)

Gabarito: letra B. Para contar o número de valores diferentes de uma coluna eliminando duplicatas, utiliza-se a função COUNT(DISTINCT coluna). É o padrão SQL que a alternativa B emprega corretamente. As demais opções ou usam sintaxe inválida, ou não eliminam duplicatas, ou não retornam a contagem.

A banca testa o conhecimento da cláusula DISTINCT combinada com COUNT para obter o total de ocorrências únicas. A tabela do enunciado é TabDepartamentos, mas a alternativa B refere-se a Departamentos — o gabarito oficial considerou esse nome aceitável, possivelmente por descuido ou por equivalência hipotética.

Alternativa A — ❌ Incorreta

A sintaxe NOT REPEAT não existe em SQL. A função COUNT(nomeDepartamento) sem DISTINCT conta todas as linhas, incluindo repetições, e o comando está incompleto (falta SELECT).

Alternativa B — ✅ Correta ⟵ GABARITO

COUNT(DISTINCT nomeDepartamento) retorna exatamente o número de valores distintos da coluna nomeDepartamento, suprimindo duplicatas. A instrução está sintaticamente correta (ainda que o nome da tabela, Departamentos, divirja do enunciado; isso foi relevado pela banca).

Alternativa C — ❌ Incorreta

SUM é uma função de agregação para valores numéricos, não se aplica a strings como nomeDepartamento. A cláusula NO-REPEAT também não é uma palavra-chave SQL válida.

Alternativa D — ❌ Incorreta

COUNT(nomeDepartamento) conta todas as ocorrências da coluna, incluindo os valores repetidos. Não elimina duplicatas, contrariando o requisito de "suprimindo duplicações".

Alternativa E — ❌ Incorreta

A palavra DISTINCT sozinha não é um comando; falta o SELECT. Além disso, mesmo que a intenção fosse SELECT DISTINCT nomeDepartamento FROM TabDepartamentos, isso retornaria a lista de valores distintos, e não o número de valores distintos (a contagem) como pedido.

Gabarito: letra B.

Link permanente: /questoes/fc060823