用MongoDB查询创建数组?
您可以使用toArray()
创建数组的概念。以下是语法-
db.yourCollectonName.find({}, {yourFieldName:1}).toArray();
让我们创建一个包含文档的集合-
> db.createArrayDemo.insertOne({"UserName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5cbd6461de8cc557214c0e00") } > db.createArrayDemo.insertOne({"UserName":"David"}); { "acknowledged" : true, "insertedId" : ObjectId("5cbd6467de8cc557214c0e01") } > db.createArrayDemo.insertOne({"UserName":"Robert"}); { "acknowledged" : true, "insertedId" : ObjectId("5cbd646cde8cc557214c0e02") } > db.createArrayDemo.insertOne({"UserName":"Sam"}); { "acknowledged" : true, "insertedId" : ObjectId("5cbd6470de8cc557214c0e03") }
在find()
方法的帮助下显示集合中的所有文档-
> db.createArrayDemo.find().pretty();
这将产生以下输出-
{ "_id" : ObjectId("5cbd6461de8cc557214c0e00"), "UserName" : "Chris" } { "_id" : ObjectId("5cbd6467de8cc557214c0e01"), "UserName" : "David" } { "_id" : ObjectId("5cbd646cde8cc557214c0e02"), "UserName" : "Robert" } { "_id" : ObjectId("5cbd6470de8cc557214c0e03"), "UserName" : "Sam" }
情况1-使用MongoDB创建数组。
如果要创建一个字段UserName的数组,而不想要_id字段,请使用以下查询。
> db.createArrayDemo.find({},{_id:0}, {UserName:1}).toArray();
这将产生以下输出-
[ { "UserName" : "Chris" }, { "UserName" : "David" }, { "UserName" : "Robert" }, { "UserName" : "Sam" } ]
情况2-仅使用具有字段name_id的MongoDB创建数组
如果您只想创建一个字段名称为_id的数组,请使用以下查询。
> db.createArrayDemo.find({}, {_id:1}).toArray();
这将产生以下输出-
[ { "_id" : ObjectId("5cbd6461de8cc557214c0e00") }, { "_id" : ObjectId("5cbd6467de8cc557214c0e01") }, { "_id" : ObjectId("5cbd646cde8cc557214c0e02") }, { "_id" : ObjectId("5cbd6470de8cc557214c0e03") } ]