以下是使用golang操作mongodb查询前1000条数据的示例代码:
package main
import (
"context"
"fmt"
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
"log"
)
func main() {
// 设置mongoDB连接选项
clientOptions := options.Client().ApplyURI("mongodb://localhost:27017")
// 连接到MongoDB
client, err := mongo.Connect(context.Background(), clientOptions)
if err != nil {
log.Fatal(err)
}
// 检查连接是否成功
err = client.Ping(context.Background(), nil)
if err != nil {
log.Fatal(err)
}
// 选择要查询的数据库和集合
collection := client.Database("mydb").Collection("mycollection")
// 定义查询选项,限制只查询前1000条数据
findOptions := options.Find().SetLimit(1000)
// 执行查询并将结果存储在一个切片中
var results []bson.M
cur, err := collection.Find(context.Background(), bson.D{}, findOptions)
if err != nil {
log.Fatal(err)
}
defer cur.Close(context.Background())
for cur.Next(context.Background()) {
var elem bson.M
err := cur.Decode(&elem)
if err != nil {
log.Fatal(err)
}
results = append(results, elem)
}
// 输出结果
fmt.Println(results)
}
该代码首先建立了一个到MongoDB的连接,然后选择要查询的数据库和集合。接下来定义查询选项,限制只查询前1000条数据。最后执行查询,并将结果存储在一个切片中。最后,将结果打印出来。