sql >> Databáze >  >> NoSQL >> MongoDB

Rozdíl mezi count() a find().count() v MongoDB

db.collection.count() a cursor.count() jsou jednoduše obaly kolem count příkaz tak spustí db.collection.count() a cursor.count() with/without same vrátí stejný dotaz argument, vrátí stejný výsledek. Nicméně count výsledek může být v rozštěpeném clusteru nepřesný.

Ovladače MongoDB kompatibilní s funkcemi 4.0 zavrhují příslušné API kurzoru a kolekce count() ve prospěch nových rozhraní API forcountDocuments() a removedDocumentCount(). Konkrétní názvy API pro daný ovladač naleznete v dokumentaci ovladače.

db.collection.countDocuments metoda interně používá agregační dotaz k vrácení počtu dokumentů, zatímco db.collection.estimatedDocumentCount/ vrátí počet dokumentů na základě metadat.

Za zmínku stojí estimatedDocumentCount výstup může být nepřesný, jak je uvedeno v dokumentaci.



  1. Redis vs MongoDB

  2. MongoDB k použití Sharding s $lookup Aggregation Operator

  3. Ovladač Mongo DB Java 3.x - Seskupit podle dotazu

  4. Co je Redis pubsub a jak jej mohu používat?