当前位置: 首页 > 知识库问答 >
问题:

在mongo-go-driver中创建。findone的筛选器

公西修文
2023-03-14
db.getCollection("events").find(
    { 
        "event.eventType" : "OSR", 
        "context.vehicleId" : NumberInt(919514), 
        "ts" : {
            "$gte" : ISODate("2019-06-21T21:38:43.022+0000")
        }
    }
).limit(1);
var query = &bson.D{
        {"event.eventType", "OSR"},
    }

result := bson.D{}
e := collection.FindOne(context.TODO(), query).Decode(&result)
var query = &bson.D{
        {"event.eventType", "OSR"},
        {"context.vehicleId", 919514}, 
    }

不返回任何文档。我还没有展开query以包括ts字段。

我希望at仍然至少返回一个文档,但什么也没有显示。有人对我做错了什么(或者我如何做得更好)有什么建议、建议或指导吗?

共有1个答案

田权
2023-03-14

不太确定,但是您尝试过用bson.m代替bson.d吗?

看起来至少对我有用。

query := &bson.M{
  "event.eventType": "OSR",
  "context.vehicleId": 919514, 
}

更多信息请参阅文档。

 类似资料:
  • 问题内容: 我已经使用Docker创建了一个MongoDB副本集,并且可以使用控制台或Robo3T进行访问并运行任何查询。 容器如下所示: 当我尝试使用mongo-go-driver ping时,问题是一个错误(我尝试使用1.0.0和1.0.2版) 调用引发的错误如下: 谢谢大家的支持! 问题答案: 这是由于无法从Docker主机解决的。在Docker中,实例,,和可通过这些名称访问。但是,无法从

  • 我试图创建一个安全过滤器,以排除某些用户在ElasticSearch中看到某些文档。例如,如果一个文档包含“abc:123”和“abc:xyz”,那么用户的配置文件中必须同时包含这两个文档才能查看该文档。我们正在使用小胡子模板创建这个动态。我的第一次尝试是这样的: 但是,我很快意识到,这将允许拥有一个控件的用户查看具有多个控件的文档。文档必须具有用户必须匹配的控件的子集。因此,如果用户只有“abc

  • 我正在尝试通过查询具有值数组的字段来打开来自mongoDB的数据流,并且每个数组索引只返回一条记录。 无论出于什么原因,它都会在arrayOfLastNames的每个索引中提取多个记录。.findOne()方法的行为与.find()方法相同。对于为什么会发生这种情况,或者这种实施方式的可能替代方案,任何建议都将不胜感激。

  • END OF LIFE NOTICE Version v2.2.0 was the final feature release of the MongoDB Perl driver andversion v2.2.2 is the final patch release. As of August 13, 2020, the MongoDB Perl driver and related libr

  • mongo-d-driver 是 MongoDB 的 D 语言开发包。 示例代码: /** make: dmd -version=D2 -Iexport libmongod-D2.a example/connect.d** -Iexport : path to the folder containing the files: * bson.di, bson_h.di, md5.di, mongo.

  • mongo-matlab-driver 是 MongoDB 的 Matlab 驱动开发包。