Questão de Banco de Dados — SQL — INSTITUTO AOCP 2025
Banco de Dados›SQL
Código
qg543515
Banca
INSTITUTO AOCP
Órgão
TRE-TO
Ano
2025
Nível
Superior
Cargo
Analista Judiciário - Área de Atividade: Apoio Especializado - Especialidade: Tecnologia da Informação
A Linguagem de Consulta Estruturada SQL ANSI (Structured Query Language American National Standards Institute) pode ser compreendida como uma linguagem de programação para armazenamento, manipulação, recuperação e processamento de informações em um banco de dados. Nessa linguagem, desconsiderando a sintaxe da linguagem e considerando apenas o nome da função, qual função que, passando uma coluna como parâmetro, retorna -1 se o valor da coluna de uma tabela for negativo, retorna 1 se o valor da coluna for positivo e retorna 0 se o valor da coluna for 0?
AFLOOR.
BSIGN.
CAVG.
DCOALLESCE.
ENOW.
Revelar gabarito e comentário▾
GabaritoB — SIGN.
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 SQL: SIGN e a matemática de sinais
Gabarito: letra B. A função que retorna -1 para valor negativo, 1 para valor positivo e 0 para valor zero é a função SIGN (do inglês sign, sinal). Ela é uma função matemática padrão da SQL ANSI, presente na maioria dos SGBDs relacionais (MySQL, PostgreSQL, SQL Server, Oracle etc.).
A função SIGN é uma das chamadas funções escalares da SQL, ou seja, funções que operam sobre um único valor (ou sobre o valor de uma coluna em cada linha) e retornam um único resultado. Diferentemente das funções de agregação (como AVG, SUM, COUNT, MIN, MAX), que resumem um conjunto de linhas em um único valor, as funções escalares são aplicadas linha a linha. Essa distinção é fundamental para entender por que a alternativa C (AVG) está incorreta.
O comportamento da função SIGN é simples e direto: dado um número , ela retorna:
se ;
se ;
se .
Por exemplo, se tivermos uma tabela Produtos com uma coluna estoque contendo os valores -5, 0 e 10, a consulta SELECT estoque, SIGN(estoque) FROM Produtos retornaria:
estoque
SIGN(estoque)
-5
-1
0
0
10
1
Essa função é útil para classificar rapidamente o sinal de um número, por exemplo, para identificar saldos negativos, zerados ou positivos em relatórios financeiros.
A banca explora aqui o conhecimento do nome da função, não a sintaxe. O enunciado pede explicitamente para "desconsiderar a sintaxe" e focar no nome. Isso é uma pegadinha clássica: o candidato pode se confundir com funções que têm nomes parecidos ou que operam de forma semelhante, mas que não fazem exatamente o que foi descrito.
Vamos analisar cada alternativa:
Alternativa A — ❌ Incorreta
A função FLOOR retorna o maior inteiro menor ou igual ao valor fornecido (arredonda para baixo). Por exemplo, FLOOR(3.7) retorna 3, e FLOOR(-2.3) retorna -3. Ela não tem relação com o sinal do número, mas sim com o arredondamento. O candidato pode confundir porque ambas são funções matemáticas, mas a finalidade é completamente diferente.
Alternativa B — ✅ Correta ⟵ GABARITO
A função SIGN é exatamente a que retorna -1, 0 ou 1 conforme o sinal do número. É a resposta direta ao enunciado. O nome vem do inglês sign (sinal), e é uma função padrão na SQL ANSI.
Alternativa C — ❌ Incorreta
A função AVG é uma função de agregação que calcula a média aritmética de um conjunto de valores. Ela não opera linha a linha, mas sim sobre um grupo de linhas (geralmente com a cláusula GROUP BY). Por exemplo, SELECT AVG(preco) FROM Produtos retorna a média dos preços de todos os produtos. Não tem nada a ver com sinal.
Alternativa D — ❌ Incorreta
A alternativa traz COALLESCE, que é um erro de digitação da função COALESCE. A função COALESCE retorna o primeiro valor não nulo de uma lista de argumentos. Por exemplo, COALESCE(NULL, 5, 10) retorna 5. Ela é usada para tratar valores NULL, não para verificar sinal. A banca pode ter incluído essa alternativa para testar se o candidato conhece a grafia correta e a função.
Alternativa E — ❌ Incorreta
A função NOW retorna a data e hora atuais do sistema. É uma função de data/hora, não matemática. Não tem relação com o sinal de um número.
NÃO CAIA NESSA!
A banca mistura funções de categorias diferentes (matemática, agregação, data) e ainda usa um nome com erro de digitação (COALLESCE) para confundir. O candidato que não conhece a função SIGN pode cair na tentação de escolher FLOOR, por ser uma função matemática, ou AVG, por ser uma função comum. A dica é: decore o nome e o comportamento das funções matemáticas básicas da SQL, especialmente SIGN, ABS, CEILING, FLOOR, ROUND, MOD.
NÃO CAIA NESSA!
Para memorizar, associe SIGN a "sinal": se o número é negativo, retorna -1; se positivo, 1; se zero, 0. É uma função simples, mas que aparece em provas justamente por ser pouco conhecida. Revise também as funções de agregação (AVG, SUM, COUNT, MIN, MAX) e as funções de data (NOW, CURDATE, DATEADD) para não confundir as categorias.