假设我的藏品中有以下文件
{
"_id":ObjectId("562e7c594c12942f08fe4192"),
"tags" : [
{
"tagName" : "fun",
"created" : ISODate("2016-01-22T06:13:56.510Z")
},
{
"tagName" : "cool",
"created" : ISODate("2016-01-22T06:13:56.509Z")
},
{
"tagName" : "good",
"created" : ISODate("2016-01-22T06:13:56.509Z")
}
]
},
{
"_id":ObjectId("562e7c594c12942f08fe4193"),
"tags" : [
{
"tagName" : "super",
"created" : ISODate("2016-01-22T06:13:56.509Z")
},
{
"tagName" : "fun",
"created" : ISODate("2016-01-22T06:13:56.509Z")
}
]
}
我想搜索相关标签,并且只想显示标签数组。
如何查询以获取标签名称列表?
答案 0 :(得分:1)
要仅查询MongoDB中的特定字段,可以将find方法与projection参数一起使用: https://docs.mongodb.org/manual/reference/method/db.collection.find/
db.test.find({}, {"tags.tagName":1,"_id":0}).pretty()
{
"tags" : [
{
"tagName" : "fun"
},
{
"tagName" : "cool"
},
{
"tagName" : "good"
}
]
}
第一个参数为空{}
,因为您没有任何查询,第二个参数是您的投影。使用嵌入式文档,您必须使用点符号"tags.tagName"
。 "_id":0
不显示_id
字段。