$sign (Sinal)

Última atualização: 2026-10-09

$sign (Sinal)

$sign retorna o sinal de um número: 1 para positivos, -1 para negativos e 0 para zero. É usado para contagens por categoria, verificações de direção (alta/baixa) e agrupamento de dados, como mapear uma variação de preço para alta, baixa ou estável. Um argumento nulo ou ausente resulta em null, e entrada NaN retorna NaN. Combinado com $abs, fornece tanto a direção quanto a magnitude de um valor, o que é mais conciso do que comparações encadeadas em uma expressão condicional e útil para contagens agrupadas posteriormente.

CategoriaMatemática
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $sign: <expressão-numérica> }

⚙️ Parâmetros

valor numéricoUm valor numérico ou uma expressão que resolva para um.

Retorno:1, -1 ou 0; NaN para entrada NaN, null quando null ou ausente

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $sign: direção de uma variação de preço
db.stocks.aggregate([
  { $project: {
      trend: { $sign: '$change' }
  } }
])

Saída:

{ '_id': 1, 'trend': 1 }
{ '_id': 2, 'trend': -1 }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QQuais valores $sign retorna?
ATrês valores: 1 para positivos, -1 para negativos e 0 para zero.
QO que $sign retorna para zero?
ARetorna 0; ambos os zeros com sinal contam como zero.
QO $sign consegue detectar altas e baixas?
ASim, passe uma diferença de preço ao $sign: 1 significa alta, -1 significa baixa e 0 significa estável.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%