Mongoの配列から特定のフィールドを返したいと思っています。Mongo:配列スライスから特定のフィールドを返す
私たちは、このようなのような文書があるとしましょう:
{
"student":"Bob",
"report_cards": [
{
"Year":2016,
"English":"B",
"Math":"A"
},
{
"Year":2015,
"English":"B",
"Math":"A"
}
]
}
私は次のように返したい:
{"Student": "Bob", {"English":"B"}}
基本的に、私は唯一のレポートカードの配列の最初の要素を必要とし、英語のフィールドのみを返します。
私はそれが周りに何か知っている:
db.collection.find({},{"Student":1, "report_cards":{$slice:1}});
しかし、これは、もちろん、完全な配列(年、英語、数学)の結果は返します。私は以下を試しました:
db.collection.find({},{"Student":1, "report_cards.$.english":{$slice:1}})
db.collection.find({},{"Student":1, "report_cards":{$slice:1, "$.english"}});
しかし、それらは正しくありません。
配列結果内のobjから1つのフィールドを返すだけですか?
ありがとうございました!埋め込まれた文書で、キーと値のペアをフィルタリングするための組み込みの演算子がありません私の知る限り