Если следующее документMongoDB: Как получить значение вложенного объекта?
{ 'a': {
'b': ['a', 'x', 'b'],
't': ['a', 'z', 'w', 't']
}
}
Я хочу, чтобы иметь возможность получить значение, связанное с вложенным объектом. Например, в python я бы сделал print(dict_name['a']['t'])
.
Я попытался find()
и findOne()
на обоих команд ниже
db.my_collection.find({}, { 'a.t': 1 })
db.my_collection.find({ 'a.t': {$exists: 'true} })
, но они не возвращаются правильные данные.
Как я могу запросить документ с 'a'
в качестве ключа, затем этот документ, получить значение, связанное с 't'
, ожидая, что ['a', 'z', 'w', 't']
будет возвращен?
Как насчет 'db.collection.aggregate ([{$ проекта: { "ц" : «$ at», _id: 0}}]) ' –
' 't" - это ключ для «a», поэтому вы создаете запись без id, плохая идея всегда требует вызова всей записи. Ex: {"a": "b", "val": ["a", "x", "b"]} – dsgdfg
@AliDehghani Я получаю кучу пустых объектов – AlanH