$documents (Documentos Literais)
Última atualização: 2026-10-09
$documents (Documentos Literais)
$documents retorna um array fornecido de documentos literais sem ler nenhuma coleção — uma entrada literal de pipeline. Ele deve ser o primeiro estágio, útil para dados de teste ou para executar expressões sobre constantes. Cada documento passa inalterado.
| Categoria | Estágios Principais |
|---|---|
| Versão do MongoDB | 5.2+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
{ $documents: [ { <doc1> }, { <doc2> }, ... ] }
⚙️ Parâmetros
| documentos | A lista de documentos literais a emitir. |
|---|
Retorno:Fluxo de documentos literal
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// $documents: verifica expressões em dados literais
db.aggregate([
{ $documents: [{ x: 1 }, { x: 2 }] },
{ $addFields: { y: { $add: ['$x', 1] } } }
])
Saída:
{ "x": 1, "y": 2 }
{ "x": 2, "y": 3 }
📌 Notas
- Deve ser o primeiro estágio do pipeline
- Não lê dados de coleção — entrada puramente literal
- Ótimo para testar expressões e construir dados de referência
🏷️ Tags Relacionados
💡 Casos Relacionados
Mais casos práticos em breve.
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
Q$documents pode aparecer no meio do pipeline?
ANão, ele deve vir primeiro; quaisquer outros estágios o seguem.
QPara que serve $documents?
AConstruir dados de teste e validar expressões de agregação no mongosh sem uma coleção real.
QQual é a diferença entre db.aggregate e db.coll.aggregate?
Adb.aggregate executa sem uma coleção; seu primeiro estágio deve ser especial, como $documents ou $currentOp.