yopp
угу, нормальных форм несколько , а слово денормализация одно
Любая форма хранения данных с избыточностью (когда возможна декомпозиция без потерь) является в какой-то степени денормализированной
yopp
В теории 5НФ единственная полностью нормальная форма
Alexander
В теории 5НФ единственная полностью нормальная форма
тогда правильно говорить денормализация до такой то формы либо введение избыточности для таких то целей.
Alexander
и вопросы сами отпадут
Anton
Хай! Есть запрос который выводит определённый элемент массива. А как сделать так чтобы не все поля элемента массива выводились, а только заданные
Boroda
Не могу понять почему получаю пустой массив: req.body = ['5ff44719c876131af095ef1f','5ff44719c876131af095ef1e'] db.collection("products").find({"_id" : req.body})
Boroda
db.collection("products").find({"_id" : { $in: req.body}}).toArray( (error,docs) => { console.log(docs) }); По итогу пустой массив
✙ Nikita
Что за драйвер?
Kenan
let arr = req.body.map(el => ObjectId(el)) db.collection("products").find({"_id" : { $in: arr}}).toArray( (error,docs) => { console.log(docs) });
Yavir
Привет, есть табличка врачей, у каждого есть свой график зайнятостей. Стоит под график занятости врача делать отедльную коллекцию?
Yavir
что-то типа join sql
Kenan
Yavir
ок, спасибо!
wertaer
народ, привет
wertaer
сразу к вопросу
wertaer
как изменить поле, допустим 3 обьекта массива вложенного в другой массив
wertaer
спасибо заранее
✙ Nikita
как изменить поле, допустим 3 обьекта массива вложенного в другой массив
3 - это третий или трех? может можешь скинуть пример как выглядит документ, так нагляднее будет?
wertaer
ок
wertaer
wertaer
допустим я хочу изменить поле
wertaer
damage
wertaer
как это можно будет сделать?
✙ Nikita
db.col.updateOne({_id: ObjectId('id here')}, {$set: {'skills.active.2.damage': 35}})
✙ Nikita
так типа?
wertaer
а
wertaer
разве вместо 2 можно любое число использзовать?
wertaer
я юзал, как в доке $
✙ Nikita
✙ Nikita
db.col.updateOne({_id: ObjectId('id here')}, {$set: {'skills.active.2.damage': 35}})
если так работает то по идеи да, можешь подставлять что нужно
wertaer
сейчас чекну
✙ Nikita
я юзал, как в доке $
https://docs.mongodb.com/manual/reference/operator/update/positional/
✙ Nikita
если тебе индекс заранее известнен, то $ не нужен
wertaer
мдауш
wertaer
а я его юзал
wertaer
постоянно
wertaer
думал другого способа нет
wertaer
смешно
wertaer
а кстати
wertaer
все таки еще один
wertaer
вопрос
Josh
у тебя явно неверная схема, как минимум сумки
wertaer
как я могу это поле во всех объектах изменить?
wertaer
под сумкой я и склад и карман подразумевал
Josh
ну смотря насколько хорошо подумать, дюп 100% сделать можно
wertaer
так что все ок
wertaer
вроде
wertaer
как я могу это поле во всех объектах изменить?
@MrOnlineCoder извини, но можешь помочь и с этим
wertaer
через цикл изменить
wertaer
или есть другой способ?
Josh
update
✙ Nikita
https://docs.mongodb.com/manual/reference/operator/update/positional-all/
✙ Nikita
у тебя явно неверная схема, как минимум сумки
но с этим согласен, что это за объект вообще?
✙ Nikita
игрок или что?
Josh
наверное вложенный инвентарь и слаги предметов как кей + там же тип карман/склад
✙ Nikita
"harakterist" все ключи на инглише, а на этот не хватило))
Josh
etoprototip
wertaer
у тебя явно неверная схема, как минимум сумки
все таки интересно что неверно?
✙ Nikita
все таки интересно что неверно?
я не могу сказать что конкретно, но уже был опыт когда делал очень раздутые и вложенные схемы, тогда и начинались танцы с бубном с этими апдейтами
wertaer
просто так меньше запросовв
wertaer
к бд
Josh
поэтому надо все схемы в одну влепить
wertaer
ну я не знал
wertaer
что это неправильно
Josh
все таки интересно что неверно?
уточни сам как организовываешь инвентарь, я выше только догадки строил
wertaer
или не самый лучший вариант
wertaer
в котором будут храниться обьекты
wertaer
предметов
wertaer
ну как тут вобщем
Josh
например при изменении параметра скила, тебе надо по всем проходиться игрокам и у всех менять
Josh
в обьекте bag будет массив
так баг это массив или объект