MONGOC_COLLECTION_DELETE_MANY(3)

πŸ’… MONGOC_COLLECTION_DELETE_MANY(3) β€” a libmongoc page πŸ’…

✨ SYNOPSIS ✨

          bool
          mongoc_collection_delete_many (mongoc_collection_t *collection,
                                         const bson_t *selector,
                                         const bson_t *opts,
                                         bson_t *reply,
                                         bson_error_t *error);

πŸŽ€ PARAMETERS πŸŽ€

  • collection β€” a mongoc_collection_t. It's the collection you're about to clean out, bestie πŸ’–
  • selector β€” a bson_t containing the query to match documents. This is the vibe check for which docs get deleted.
  • reply β€” a maybe-NULL pointer to overwritable storage for a bson_t to contain the results. Optional output spot, no pressure.
  • error β€” an optional location for a bson_error_t or NULL. Pass NULL if you're feeling fearless πŸ™ˆ

Now, opts may be NULL or a BSON document with additional command options, and here's the whole menu:

  • writeConcern β€” Construct a mongoc_write_concern_t and use mongoc_write_concern_append() to add the write concern to opts. See the example code for mongoc_client_write_command_with_opts().
  • 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 collection, and use mongoc_client_session_append() to add the session to opts. See the example code for mongoc_client_session_t.
  • validate β€” Construct a bitwise-or of all desired bson_validate_flags_t. Set to false to skip client-side validation of the provided BSON documents.
  • 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.
  • 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.
  • hint β€” A document or string that specifies the index to use to support the query predicate.
  • let β€” A BSON document consisting of any number of parameter names, each followed by definitions of constants in the MQL Aggregate Expression language.

πŸ’… DESCRIPTION πŸ’…

Okay so this function removes all documents in the given collection that match selector. It's giving full-sweep energy, not a one-doc situation. 🧹✨

To delete at most one matching document, use mongoc_collection_delete_one() β€” that's the "just one, please" version.

If you pass a non-NULL reply, it is filled out with the field "deletedCount". If there is a server error then reply contains either a "writeErrors" array with one subdocument or a "writeConcernErrors" array. The reply must be freed with bson_destroy().

bestie, do not ghost your memory: if you passed a non-NULL reply, it must be freed with bson_destroy(). periodt πŸ’€

😭 ERRORS 😭

Errors are propagated via the error parameter. That's the whole point of it β€” if something goes wrong, it comes back through error.

🫢 RETURNS 🫢

Returns true if successful. Returns false and sets error if there are invalid arguments or a server or network error. Simple, iconic, done πŸ‘‘

πŸ‘‘ AUTHOR πŸ‘‘

MongoDB, Inc

2009-present, MongoDB, Inc.


mwah πŸ’‹ this libmongoc page is version 2.5.6, dated Oct 09, 2026 β€” now go forth and delete responsibly, bestie 🫢✨

πŸ“¦ where this page comes from