当前位置: 首页 > 面试题库 >

MongoDB切片查询到golang

陆俊迈
2023-03-14
问题内容

我如何将下面的切片查询写入golang?

db.con.find({"repoid":1356485},{"contr":{$slice:[0,10]}}).pretty()

尝试过但不起作用

DB.C("con").Find(bson.M{"id": ID, "contr": bson.M{"$slice": []interface{}{"$contr", offset, limit}}})

找不到任何东西。有任何想法吗?

先感谢您


问题答案:

使用Collection.Find()只能指定过滤器。但是,您有一个预测:

{"contr":{$slice:[0,10]}

可以使用来指定投影Query.Select(),因此这就是您可以应用$slicein投影的方式:

var results []bson.M // Use your own type here, but this works too

err := DB.C("con").Find(bson.M{"id": ID}).Select(bson.M{
    "contr": bson.M{"$slice": []int{offset, limit}},
}).All(&results)

// handle error

另请注意,确定您过滤的属性是"id"还是只是一个错字,应该是"_id"。如果是后者,您还可以使用Collection.FindId()按文档ID查询:

err := DB.C("con").FindId(ID).Select(bson.M{
    "contr": bson.M{"$slice": []int{offset, limit}},
}).All(&results)


 类似资料:
  • 我使用Nodejs和MongoDB与expressjs和mongoose库,创建一个具有用户、文章和评论模式的博客API。下面是我使用的模式。

  • 问题内容: 我有一个博客系统,可将上传的文件存储到GridFS系统中。问题是,我不知道如何查询它! 我将Mongoose与尚未支持GridFS的NodeJS一起使用,因此我将实际的mongodb模块用于GridFS操作。没有SEEM可以像常规集合中的文档一样查询文件元数据。 将元数据存储在指向GridFS objectId的文档中是否明智?可以轻松查询? 任何帮助将不胜感激,我有点卡住了:/ 问题

  • 我在MongoDB中有以下表单的集合。正如您所看到的,有些文档有两个成员“id”和“xid”,而有些文档只有1个“id”(除了对象_id之外) 我想创建一个mongoexport语句,它将ID和xid值都>0的文档导出到仅csv的文档

  • 例如,我在MongoDB中有以下数据: 现在我想查询“SUM传入的数量在11 - 12之间”(结果应该是500),我如何使用Mongo Shell来做到这一点?

  • 问题内容: 我想查询mysql数据库中的表以获取切片值: 但是我得到这个错误: 我怎样才能解决这个问题? 问题答案: sqlx为此提供了很好的帮助:在In()中,我们只需要使用args和Rebind准备查询,如下所示: 另外,我建议您在这里看看:http : //jmoiron.github.io/sqlx/有很多示例,包括 IN

  • 问题内容: 我希望从我的用户模型中检索一些信息,如下所示: 在主页中,我有一个 位置 过滤器,您可以在其中浏览来自国家或城市的用户。 所有字段还包含其中的用户数: 在主页上,然后我还有“学生和老师”页面,我希望仅提供有关这些国家和城市有多少老师的信息… 我想做的是创建一个对MongoDB的查询,以通过单个查询检索所有这些信息。 此刻查询如下: 问题是我不知道如何获取所需的所有信息。 我不知道如何获