gpt4 book ai didi

mongodb - 如何使用适用于 Go 的 mongo 驱动程序在 Mongodb 查询上创建 View ?

转载 作者:IT王子 更新时间:2023-10-29 01:40:55 25 4
gpt4 key购买 nike

我正在使用 Golang 和 Mongodb。我正在使用 https://godoc.org/gopkg.in/mgo.v2 Go 的 mongo 驱动程序。我想写关于我的查询的 View ,但我发现没有为此定义的函数。 Mongo Views 是 3.4 版中提供的最新功能。我也在其他驱动程序中检查过它:

https://godoc.org/github.com/mongodb/mongo-go-driver/mongo

它甚至不存在。如何在我的驱动程序中获得此功能?

最佳答案

I want to write views on my queries but I found that there is no function defined for that.

从 MongoDB v3.4 开始,支持从现有集合或其他 View 创建只读 View 。

为了创建一个 View ,你可以执行create()数据库命令。例如:

db.runCommand( { create: <view>, 
viewOn: <source>,
pipeline: <pipeline>,
collation: <collation>
} );

例如,如果您有一个来自 mongo shell 的 create 查看命令,如下所示:

db.runCommand( {create:"testview", 
viewOn: "collectionName",
pipeline: [ {"$project":{ "fieldA":1 } } ]
});

利用 mongo-go-driver (目前是0.0.9版本),上面的create view命令可以用Go写成如下:

_, err = database.RunCommand(
context.Background(),
bson.NewDocument(bson.EC.String("create", "testview"),
bson.EC.String("viewOn", "collectionName"),
bson.EC.ArrayFromElements(
"pipeline", bson.VC.DocumentFromElements(
bson.EC.SubDocumentFromElements(
"$project", bson.EC.Int32("fieldA", 1),),
),
),
),
)

关于mongodb - 如何使用适用于 Go 的 mongo 驱动程序在 Mongodb 查询上创建 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51336129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com