Questão de Banco de Dados — MySQL — Avança SP 2023
Banco de Dados›MySQL
Código
qq830797
Banca
Avança SP
Órgão
DAE-Santa Bárbara d’Oeste
Ano
2023
Nível
Médio
Cargo
Técnico em Tecnologia da Informação
Qual das seguintes funções agregadas não é suportada pelo MySQL?
AAVG() - calcula a média de todos os valores de uma coluna.
BMIN() – retorna o menor valor de todos os valores de uma coluna.
CINTERVAL() – retorna um conjunto de valores entre um intervalo especificado.
DMAX() – retorna o maior valor de todos os valores de uma coluna.
ECOUNT() – retorna a quantidade de valores de uma coluna.
Revelar gabarito e comentário▾
GabaritoC — INTERVAL() – retorna um conjunto de valores entre um intervalo especificado.
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”.
Funções de agregação no MySQL
Gabarito: letra C. A função INTERVAL() não é uma função de agregação suportada pelo MySQL — ela é uma função de comparação de intervalos, usada para retornar a posição de um valor em uma lista de intervalos, e não para resumir dados de múltiplas linhas em um único valor. As funções de agregação clássicas do SQL são AVG(), MIN(), MAX(), COUNT() e SUM(), todas presentes nas demais alternativas.
As funções de agregação são um dos pilares da linguagem SQL: elas recebem um conjunto de valores (as tuplas de uma coluna, possivelmente filtradas por WHERE ou agrupadas por GROUP BY) e devolvem um único valor-resumo. É por isso que também são chamadas de funções de conjunto ou funções estatísticas. O MySQL implementa o padrão SQL e traz embutidas as principais: COUNT() conta linhas, SUM() soma valores numéricos, AVG() calcula a média, MIN() e MAX() retornam, respectivamente, o menor e o maior valor de uma coluna. A sintaxe básica é sempre SELECT FUNCAO(coluna) FROM tabela [WHERE condição].
A pegadinha desta questão está em distinguir função de agregação de função escalar/comparativa. A função INTERVAL() existe no MySQL, mas não agrega nada: ela recebe um valor N e uma lista de valores de referência N1, N2, N3... e retorna o índice da posição em que N se encaixaria nessa lista ordenada. Por exemplo, INTERVAL(23, 1, 15, 17, 30, 44, 200) retorna 3, pois 23 é menor que 30 (o 4º valor da lista) e maior que 17 (o 3º). Ou seja, ela trabalha com uma única linha de cada vez, comparando valores — não resume um conjunto de linhas. É uma função de comparação, não de agregação.
Outra confusão comum é pensar que INTERVAL() se relaciona com a cláusula BETWEEN, que verifica se um valor está dentro de um intervalo. Mas BETWEEN é um operador de comparação usado no WHERE, e INTERVAL() é uma função que retorna um número inteiro (a posição). Nenhuma das duas é função de agregação. Para fixar: as funções de agregação do MySQL são exatamente COUNT, SUM, AVG, MIN, MAX (e algumas variações como GROUP_CONCAT, STDDEV, VARIANCE), todas operando sobre conjuntos de linhas.
A banca explora justamente o nome sugestivo de INTERVAL() — o candidato pode associá-lo a "intervalo de valores" e achar que é uma agregação. Mas o critério decisivo é simples: função de agregação resume múltiplas linhas em um único valor; INTERVAL() compara um valor contra uma lista e retorna uma posição, sem resumir nada.
Funções de agregação (MySQL)
1Resumem várias linhas em um único valor
COUNT()
SUM()
AVG()
MIN()
MAX()
2Variações
GROUP_CONCAT()
STDDEV()
VARIANCE()
3Não é agregação
INTERVAL()
Compara valor contra lista
Retorna posição (índice)
LEVEL · soulevel.com.br
Alternativa A — ✅ Correta
AVG() é uma função de agregação legítima do MySQL. Ela calcula a média aritmética dos valores de uma coluna numérica, ignorando valores NULL no cálculo. A descrição da alternativa está correta.
Alternativa B — ✅ Correta
MIN() é uma função de agregação que retorna o menor valor de uma coluna. Funciona com tipos numéricos, de data e até strings (comparação lexicográfica). A descrição está correta.
Alternativa C — ❌ Incorreta ⟵ GABARITO
INTERVAL()não é uma função de agregação. Ela é uma função de comparação que retorna a posição de um valor em uma lista de intervalos. A descrição da alternativa — "retorna um conjunto de valores entre um intervalo especificado" — também está errada, pois ela não retorna um conjunto de valores, e sim um índice inteiro. É a única alternativa que não corresponde a uma função de agregação suportada pelo MySQL.
Alternativa D — ✅ Correta
MAX() é uma função de agregação que retorna o maior valor de uma coluna. Assim como MIN(), funciona com diversos tipos de dados. A descrição está correta.
Alternativa E — ✅ Correta
COUNT() é uma função de agregação que retorna o número de linhas que atendem a um critério. COUNT(*) conta todas as linhas, enquanto COUNT(coluna) conta apenas as linhas onde a coluna não é NULL. A descrição está correta.
NÃO CAIA NESSA!
A banca aposta no nome sugestivo de INTERVAL() para fazer o candidato acreditar que ela agrega valores de um intervalo. Mas o critério é outro: função de agregação resume várias linhas em um único valor; INTERVAL() compara um único valor contra uma lista e retorna um índice — é função de comparação, não de agregação. Guarde as cinco clássicas: COUNT, SUM, AVG, MIN, MAX.
Gabarito: letra C — a única que não é função de agregação do MySQL.