Многократное использование позиционного оператора `$` для обновления вложенных массивов
Этот вопрос тесно связан сэтот и я рассмотрю совет, данный относительно дизайна схемы в контексте NoSQL, но яМне интересно это понять:
Актуальные вопросыПредположим, у вас есть следующий документ:
_id : 2 abcd
name : 2 unittest.com
paths : 4
0 : 3
path : 2 home
queries : 4
0 : 3
name : 2 query1
url : 2 www.unittest.com/home?query1
requests: 4
1 : 3
name : 2 query2
url : 2 www.unittest.com/home?query2
requests: 4
В основном яхотел бы знать
если можно использовать MongoDB'омс позиционным$
оператор (подробности) несколько раз, или по-другому, в сценариях обновления, которые включают структуры массива / документа с "степень вложенности " больше 1 :(
{ : { "paths.$.queries.$.requests" : value } }
Безразлично»т работа)
вместо "только" быть в состоянии использовать$
один раз для массива верхнего уровня и быть обязанным использовать явные индексы для массивов наболее высокие уровни ":
{ : { "paths.$.queries.0.requests" : value } }
) (работает)
если вообще возможно, как будет выглядеть соответствующий синтаксис R.
Ниже тебянайду воспроизводимый пример. Я старался быть максимально кратким.
Пример кодаПодключение к базе данныхrequire("rmongodb")
db