sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB count() versus countDocuments()

db.collection.find metode returnerer en markør . cursor.count() metode på markøren tæller antallet af dokumenter, der refereres til af en markør. Dette er det samme som db.collection.count() .

Begge disse metoder (cursor.count() og db.collection.count() ) er forældet fra og med MongoDB v4.0. Fra dokumentationen :

db.collection.countDocuments(query) returnerer antallet af dokumenter, der matcher forespørgslen for en samling eller visning. Dette er den metode, du skal bruge til at tælle antallet af dokumenter i din samling.

Ja, de fleste gange. Kun countDocuments returnerer det faktiske antal dokumenter. De andre metoder returnerer tæller baseret på samlingens metadata.

Hvis du vil bruge db.collection.count , brug det med et forespørgselsprædikat , og dette vil returnere det nøjagtige antal dokumenter (men bemærk, at denne metode er forældet).



  1. Sådan administreres konfigurationsskabeloner til dine databaser med ClusterControl

  2. hvorfor jeg laver et 2dsphere-indeks, men når jeg forespørger viser det s2cursor?

  3. Hent værdier efter nøglemønster i StackExchange.Redis

  4. Meteor:Meteor.call() indefra observer, at tilbagekald ikke udføres