Comment faire pour imprimer plus de 20 éléments (documents) dans MongoDB du shell?
db.foo.find().limit(300)
ne le fera pas. Elle affiche toujours que 20 documents.
db.foo.find().toArray()
db.foo.find().forEach(printjson)
permettra à la fois d'imprimer très étendu vue de chaque document au lieu de la 1 version en ligne pour find()
:
- Par défaut le shell mongo imprimer uniquement les 20 premiers documents, vous pouvez obtenir le prochain lot de 20 documents en tapant
Type it
dans le shell. Et ainsi de suite.
Vous devez vous connecter pour publier un commentaire.
fera.
MongoDB Docs - a Commencé avec le Shell mongo - de l'Exécution des Requêtes
De la coque si vous voulez afficher tous les résultats que vous pourriez faire
db.collection.find().toArray()
pour obtenir tous les résultats sans elle.Vous pouvez utiliser
it
à l'intérieur de la coquille d'itérer sur les 20 prochaines résultats. Tapez simplementit
si vous voyez "a plus" et vous verrez les 20 prochaines articles.it
Pourrait toujours faire:
Pour obtenir que la vue compacte.
Aussi, je trouve qu'il est très utile pour limiter les champs retournés par la trouver:
qui ne revenir que le _id et nom de domaine de foo.
--eval
)Je vous suggère d'avoir un
~/.mongorc.js
fichier de sorte que vous n'avez pas à régler la taille par défaut à chaque fois.Pour en savoir plus sur ce que tu peux faire, je vous propose de regarder cet article: http://mo.github.io/2017/01/22/mongo-db-tips-and-tricks.html
Dans le shell mongo, si le retour du curseur n'est pas affectée à une variable avec le mot clé var, le curseur est automatiquement itéré jusqu'à l'accès à l'20 premiers documents qui correspondent à la requête. Vous pouvez définir la DBQuery.shellBatchSize variable pour modifier le nombre de automatiquement itéré documents.
De référence - https://docs.mongodb.com/v3.2/reference/method/db.collection.find/