MongoCollection.findOne

Queries the collection for existing documents.

  1. auto findOne(T query, U returnFieldSelector, QueryFlags flags)
  2. auto findOne(T query, U projection, FindOptions options)
    struct MongoCollection
    findOne
    (
    R = Bson
    T
    U
    )
    (,,
    FindOptions options = FindOptions.init
    )
    if (
    !is(U == FindOptions)
    )
  3. auto findOne(T query, FindOptions options)

Return Value

Type: auto

By default, a Bson value of the matching document is returned, or Bson(null) when no document matched. For types R that are not Bson, the returned value is either of type R, or of type $(Nullable!R), if R is not a reference/pointer type.

The projection parameter limits what fields are returned by the database, see projection documentation linked below.

Throws

Exception if a DB communication error or a query error occurred.

Examples

import vibe.db.mongo.mongo;

void test()
{
	auto coll = connectMongoDB("127.0.0.1").getCollection("test");
	// find documents with status == "A"
	auto x = coll.findOne(["status": "A"], ["status": true, "otherField": true]);
	// x now only contains _id (implicit, unless you make it `false`), status and otherField
}

See Also

Meta