登录
首页 >  Golang >  Go问答

我应该如何设置 setLimit(int64) 方法以显示所有集合中的记录

来源:stackoverflow

时间:2024-03-10 21:54:30 387浏览 收藏

对于一个Golang开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《我应该如何设置 setLimit(int64) 方法以显示所有集合中的记录》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

问题内容

in setlimit() 方法我应该保留什么来获取数据中的所有记录

包 - 使用:go.mongodb.org/mongo-driver/bson

go.mongodb.org/mongo-driver/mongo

go.mongodb.org/mongo-driver/mongo/options

findOption := options.Find()

findOption.SetLimit(?)

var res1 []Person

cur, err := collection.Find(context.TODO(), bson.D{}, findOption)

if err != nil {
    log.Fatal(err)
}

for cur.Next(context.TODO()) {

    var elem Person

    err := cur.Decode(&elem)

    if err != nil {
        log.Fatal(err)
    }

    res1 = append(res1, elem)
}

if err := cur.Err(); err != nil {
    log.Fatal(err)
}

// Close the cursor once finished
cur.Close(context.TODO())

fmt.Printf("Found multiple documents (array of pointers): %+v\n", res1)

解决方案


如果您不想限制结果数量,最简单的方法是不要拨打 FindOptions.SetLimit()。如果您未传递 findoptions,或者传递了未设置限制的值,则默认情况下,结果不受限制。

如果您之前已设置了 findoptions 值的限制,则可以设置 0 的限制来“撤消”该限制。

引用自FindOptions.Limit

// The maximum number of documents to return. The default value is 0, which means that all documents matching the
// filter will be returned. A negative limit specifies that the resulting documents should be returned in a single
// batch. The default value is 0.
Limit *int64

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>