I want to get the count number in a collections based on a field in documents.
According to Mongodb documentation, we can use runCommand()
to do so.
eg:
db.runCommand( { count:'orders',
query: { ord_dt: { $gt: new Date('01/01/2012') } }
} )
But how do I do this in MGO?
It seem runcommand is not included in Mgo. I am using mgo.v2.
The runCommand()
is available in the mgo
package as Database.Run()
. For an example how to use it, see this answer: Efficient paging in MongoDB using mgo.
But what you want can simply be achieved by using the Query.Count()
method:
coll := ... // obtain collection...
count, err := coll.Find(bson.M{"ord_dt": bson.M{
"$gt": time.Date(2012, 1, 1, 0, 0, 0, 0, time.UTC),
}}).Count()