find (Consultar Documentos)
Última atualização: 2026-10-09
find (Consultar Documentos)
find é o comando de consulta do MongoDB. O mongosh normalmente usa o helper db.collection.find(filtro, projeção); a forma crua é db.runCommand({ find: 'orders', filter: {...} }). Ele suporta filter, projection, sort, limit, skip e batchSize. O resultado é um cursor; um id diferente de zero precisa de getMore para os próximos lotes.
| Categoria | Comandos de Administração |
|---|---|
| Versão do MongoDB | 1.0+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
db.orders.find({ status: "shipped" }).limit(10)
db.runCommand({
find: "orders",
filter: { status: "shipped" },
limit: 10
})
⚙️ Parâmetros
| filter | O documento de predicado da consulta. |
|---|---|
| projection | Seleção de campos (1 inclui / 0 exclui). |
| sort/limit/skip | Ordem de classificação, limite de resultados e salto. |
Retorno:Retorna um cursor; firstBatch contém as correspondências, getMore para lotes adicionais quando id é diferente de zero
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// find: forma crua de comando
use shop
db.runCommand({
find: 'orders',
filter: { status: 'shipped' },
sort: { createdAt: -1 },
limit: 5
})
Saída:
{ cursor: { firstBatch: [ { _id: ObjectId('...'), status: 'shipped' } ], id: 0, ns: 'shop.orders' }, ok: 1 }
📌 Notas
- O helper find() basta no dia a dia; a forma crua ajusta batchSize com precisão
- Resultados de cursor com id != 0 exigem getMore
- Verifique o uso de índices com explain()
🏷️ Tags Relacionados
💡 Casos Relacionados
Mais casos práticos em breve.
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
QComo findOne se relaciona com find?
AfindOne embrulha find com limit: 1 e retorna o primeiro documento.
QComo busco todos os resultados do cursor?
AChame toArray() ou itere; o driver emite getMore automaticamente quando id é diferente de zero.
QComo inspeciono o desempenho da consulta?
AExecute explain() e verifique o uso de índices além de executionStats.