スキーマが次のようなユーザー コレクションがあります。
var userSchema = new mongoose.Schema({
id : Number,
tags :
[
{
tag_name : String,
tag_url : String,
posts :
[
{
post_id: String
}
]
}
]
});
私がやりたいのは、post_id 値が posts 配列にある tag_name だけを取得することです。だから、私は次のようにクエリを試しました
db.users.find({'tags.posts.post_id':'000000'}, {'tags.tag_name':1})
残念ながら、post_id は posts 配列にありませんが、すべての tag_name を取得しました。
このクエリを書くのを手伝ってもらえますか?
編集 ================================================= ================
次のようなデータがあるとしましょう:
tags
[
{
tag_name: 'java',
posts : [{post_id:'000000'}, {post_id:'111111'}
},
{
tag_name: 'ruby',
posts : [{post_id:'000000'}, {post_id:'111111'}
},
{
tag_name: 'php',
posts : [{post_id:'111111'}
},
]
post_id でタグ要素を取得したいのですが、post_id で検索すると '000000' です tag_name が 'java' で、最後のタグ要素ではない 'ruby' のタグ要素だけを取得したいのですが、可能ですか?