次の形式のドキュメントを含むMongoDBコレクションがあります。
{
"_id" : ObjectId("4e8ae86d08101908e1000001"),
"name" : ["Name"],
"zipcode" : ["2223"]
}
{
"_id" : ObjectId("4e8ae86d08101908e1000002"),
"name" : ["Another ", "Name"],
"zipcode" : ["2224"]
}
現在、特定の配列サイズに一致するドキュメントを取得できます。
db.accommodations.find({ name : { $size : 2 }})
これにより、name
配列に2つの要素があるドキュメントが正しく返されます。ただし、フィールドの配列サイズが2より大きい$gt
すべてのドキュメントを返すコマンドを実行することはできませんname
。
db.accommodations.find({ name : { $size: { $gt : 1 } }})
name
1より大きいサイズの配列を持つすべてのドキュメントを選択するにはどうすればよいですか(できれば現在のデータ構造を変更する必要がない)。