$toDouble (Converter para Double)
Última atualização: 2026-10-09
$toDouble (Converter para Double)
$toDouble converte um valor em um double BSON. Ele aceita números, strings numéricas, booleanos e datas; null permanece null. Usos típicos: transformar números em string importados de CSV em numéricos para agregação ou alargar inteiros para floats para que a divisão mantenha frações. Strings precisam ser literais numéricos válidos ou a conversão gera erro. É o atalho de $convert para to: double; prefira $toDecimal para dinheiro.
| Categoria | Conjunto, Condição e Conversão |
|---|---|
| Versão do MongoDB | 1.0+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
{ $toDouble: <expressão> }
⚙️ Parâmetros
| expressão | Um número, string numérica, booleano ou data. |
|---|
Retorno:Um double; null quando a entrada é null
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// $toDouble: interpretar uma string de pontuação em número
db.reviews.aggregate([
{ $project: {
score: { $toDouble: '$scoreStr' }
} }
])
Saída:
{ '_id': 1, 'score': 4.5 }
📌 Notas
- Strings precisam ser números válidos como '4.5'; 'abc' gera erro
- A precisão do double é limitada; use $toDecimal para dinheiro
- Booleanos convertem para 1.0 e 0.0
🏷️ Tags Relacionados
💡 Casos Relacionados
Mais casos práticos em breve.
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
QA string '4.5' consegue converter?
ASim, desde que seja um literal numérico válido.
QDinheiro deve usar $toDouble?
APrefira $toDecimal — double sofre erros de precisão.
QO que null retorna?
AEle retorna null.