Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
MONGOC_COLLECT...DOCUMENT_COUNT(3)  libmongoc MONGOC_COLLECT...DOCUMENT_COUNT(3)

SYNOPSIS
	int64_t
	mongoc_collection_estimated_document_count (mongoc_collection_t *collection,
						    const bson_t *opts,
						    const mongoc_read_prefs_t *read_prefs,
						    bson_t *reply,
						    bson_error_t *error);

PARAMETERS
     * collection: A mongoc_collection_t.

     * opts: A bson_t, NULL to ignore.

     * read_prefs: A mongoc_read_prefs_t or NULL.

     * reply:  A maybe-NULL pointer to overwritable storage for a bson_t to con-
       tain the results.

     * error: An optional location for a bson_error_t or NULL.

     opts may be NULL or a BSON document with additional command options:

     * readConcern:    Construct     a	   mongoc_read_concern_t     and     use
       mongoc_read_concern_append() to add the read concern to opts. See the ex-
       ample  code  for mongoc_client_read_command_with_opts(). Read concern re-
       quires MongoDB 3.2 or later, otherwise an error is returned.

     * sessionId:    First,    construct    a	 mongoc_client_session_t    with
       mongoc_client_start_session().	You   can   begin   a  transaction  with
       mongoc_client_session_start_transaction(),     optionally     with      a
       mongoc_transaction_opt_t  that  overrides the options inherited from col-
       lection, and use mongoc_client_session_append() to  add	the  session  to
       opts. See the example code for mongoc_client_session_t.

     * collation:  Configure  textual  comparisons. See Setting Collation Order,
       and the MongoDB Manual entry on Collation. Collation requires MongoDB 3.2
       or later, otherwise an error is returned.

     * serverId: To target a specific server, include an int32 "serverId" field.
       Obtain	the   id   by	calling   mongoc_client_select_server(),    then
       mongoc_server_description_id() on its return value.

     * skip:  An  int specifying how many documents matching the query should be
       skipped before counting.

     * limit: An int specifying the maximum number of documents to count.

     * comment: A bson_value_t specifying the comment to attach to this command.
       The comment will appear in log messages, profiler output,  and  currentOp
       output. Requires MongoDB 4.4 or later.

     For  a  list of all options, see the MongoDB Manual entry on the count com-
     mand.

DESCRIPTION
     This functions executes a count  query  on  collection.  In  contrast  with
     mongoc_collection_count_documents(),  the	count returned is not guaranteed
     to be accurate.

     This function is considered a retryable read operation.  Upon  a  transient
     error (a network error, errors due to replica set failover, etc.) the oper-
     ation  is	safely	retried  once.	 If  retryreads is false in the URI (see
     mongoc_uri_t) the retry behavior does not apply.

   Behavior
     This method is implemented using the count command. Due to an oversight  in
     versions 5.0.0-5.0.8 of MongoDB, the count command was not included in ver-
     sion  "1" of the Stable API. Applications using this method with the Stable
     API are recommended to upgrade their server version to  5.0.9+  or  disable
     strict mode (via :symbol:`mongoc_server_api_strict()) to avoid encountering
     errors.

ERRORS
     Errors are propagated via the error parameter.

RETURNS
     -1 on failure, otherwise the number of documents counted.

EXAMPLE
	#include <bson/bson.h>
	#include <mongoc/mongoc.h>
	#include <stdio.h>

	static void
	print_count (mongoc_collection_t *collection, bson_t *query)
	{
	   bson_error_t error;
	   int64_t count;
	   bson_t* opts = BCON_NEW ("skip", BCON_INT64(5));

	   count = mongoc_collection_estimated_document_count (
	      collection, opts, NULL, NULL, &error);
	   bson_destroy (opts);

	   if (count < 0) {
	      fprintf (stderr, "Count failed: %s\n", error.message);
	   } else {
	      printf ("%" PRId64 " documents counted.\n", count);
	   }
	}

     SEE ALSO:
	mongoc_collection_count_documents()
	Count: Behavior in the MongoDB Manual

AUTHOR
     MongoDB, Inc

COPYRIGHT
     2009-present, MongoDB, Inc.

1.30.8				  Aug 27, 2026MONGOC_COLLECT...DOCUMENT_COUNT(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mongoc_collection_estimated_document_count&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help