【发布时间】:2019-09-28 15:13:12
【问题描述】:
我正在尝试从我的 mongodb 集合中检索随机记录。
我正在使用golang 和mongo-go-driver
pipeline := []bson.E{bson.E{"$sample", bson.E{"size", 10}}}
collection.Aggregate(context.TODO(), pipeline)
聚合返回我这个错误:
A pipeline stage specification object must contain exactly one field.
我试过$size 和size
有没有可能mongo-go-driver 不支持$sample?
【问题讨论】:
-
在这种情况下,首先生成一个在 mongodb shell 中工作的版本要容易得多。然后你就知道这确实是可能的,翻译它只是忙碌的工作。
-
另外,我自己没有使用过mongodb go驱动,但是从查看文档看来,您需要将那些bson.E推到bson.D中。或者使用
bson.A而不是[]bson.E
标签: mongodb go aggregate sample querying