{
'_id': ObjectId('6433bc6cb47d316b01e0c3b6'),
'name': {
'coordinates_and_text': [
[{
'BL': 3,
'BR': 4,
'TL': 1,
'TR': 2,
'text': 'abc'
},
{
'BL': 30,
'BR': 40,
'TL': 10,
'TR': 20,
'text': 'limited'
}
],
[{
'BL': 300,
'BR': 400,
'TL': 100,
'TR': 200,
'text': 'hello'
}]
]
}
}
我试图访问“text”:“limited”在数组的数组。
我在命令行下面试过了,但它什么也没返回。
db.collection.find({'name.coordinates_and_text.text':'hello'})
1条答案
按热度按时间mjqavswn1#
选项1:使用$elemMatch:
Playground
选项2您可以创建wildcard text index:
选项3您可以更改(here_is_how)schema,例如将key添加到第二个嵌套数组中,这样会更容易:
(在示例中,第二个数组键是“t”):example