我在表格代码下方创建了一个表格。
使用组织
db.test.insert({ bookname : "Mongodb", author : "Alex", price : 45, qty : 100})
db.test.insert({ bookname : "Cassandra", author : "John", price : 75, qty : 75})
现在,当书名是Mongodb时,我需要MongoDb和alex值
在这里我们匹配了书名,只有剩余的作者姓名会自动显示?
答案 0 :(得分:0)
您所看到的就是投射的影像
赞
db.test.find({ bookname: "mongodb" }, { _id: 0, bookname: 1, author: 1 })
Mongodb文档
https://docs.mongodb.com/manual/tutorial/project-fields-from-query-results/
答案 1 :(得分:0)
要获取一个或多个文档,请使用-
db.test.find(<match>, <projection>)
where是过滤部分(SQL中的where子句),并指定要返回结果的键(SQL表中的列)。
要在某些字段上过滤结果,请使用-
db.test.find({ "bookname" : "Mongodb" })
以上命令将导致所有与bookname
匹配为Mongodb
的作者。 { "bookname" : "Mongodb" }
是命令的match
部分。您可以像-
find()
命令
db.test.find({ "bookname" : "Mongodb" }, {"bookname": 1, author: 1})
此命令的输出文档将以bookname
,author
和_id
作为键。 {"bookname": 1, author: 1}
是您的projection
命令的一部分。对于输出中我们想要的每个键,我们将不需要的键分别设置为1
和0
。
默认情况下,所有键都将输出。如果您为1
设置了任何键,则仅返回该键和_id
。如果您不希望_id
,则在投影中将其设置为0
。
db.test.find({ "bookname" : "Mongodb" }, {"bookname": 1, author: 1, _id: 0})