Данила
Ну и запросы писать
Nick
Вопросы такие, как создать js файл и использовать его для локальной бд, использую compass
Точно также как у вас в других миграциях, и запусуать их на своей локальной бд
Данила
Ладно, когда получится отпишусь, может кому полезно будет
Данила
Спасибо !
Cloud
Добрый вечер, подскажите плз, что за необычный синтаксис, нигде об этом информации не нашел. filterId.$in Если что в filterId - лежит либо undefined либо ObjectId
orthodox
Привет, вот такой запрос db.users.update_many({'subscription.is_active': True}, [{'$set': {'subscription.until': {"$add": ["$date", period_in_milliseconds]}}}]) превращает subscription.until в null. В чём может быть проблема? subscription.until - обьект datetime изначально
orthodox
В mongo shell то же самое. db.users.updateMany({'subscription.is_active': true}, [{$set: {'subscription.until': {$add: ["$date", 1000]}}}]) subscription.until из datetime превращается в null
Не могу понять. Это работает только с timestamp? Вот как отображается документ subscription в bsonе: "subscription": { "is_active": true, "until": { "$date": "1970-01-01T00:00:00.000Z" } },
Cloud
Это же js, а так на первый вид похоже на тернарный оператор
Я не про тернарник, которых тут 2 Я про filterId.$in Первый раз вижу, чтобы оператор монги использовался после точки
lutik
А почему у меня при lookUp происходит мерж жсонов с одинаковым idШником, это можно как то убрать ? В гугле какие то ужасы
Данила
что не так в запросе и как его исправить ?
Данила
двоеточие после or//
Данила
а возможно $unset принимать для нескольких полей стразу в одном в запросе ? использую forEach() c updateMany
Já jsem vítěz
всем привет, прямое применение .sort() к результатам запроса быстрее чем сортировка результатов в js уже после их получения?
A
не знаю mongo. но в любом случае да.
Шох
Всем привет, в aggregate можно ли использовать одновременно $cond : {$and, $or} ?
Denis
Всем привет, в aggregate можно ли использовать одновременно $cond : {$and, $or} ?
В агрегейт можно все. Просто добавь пайплайн еще если столкнулся с ограничением
Шох
если взять php if (((a == b) || (a == s)) && (q == w)) вот такое нужно
Данила
Почему нет
Nick
если взять php if (((a == b) || (a == s)) && (q == w)) вот такое нужно
переносится за счет составления вложенного условия $and:[ {$or:[ {$eq:[a,b]}, {$eq:[a,s]} ]}, {$eq:[q,w]} ] примерно так, надо подшаманить обращения к переменным и полям
Nikita
Все привет! Как из коллекции (массива item) { "_id" : ObjectId("5fccb52067184993fd1085c3"), "annualQty" : 2.7, "lastPrice" : 30.29, "item" : [ { "supplierProductId" : ObjectId("608302cd4e157c64edd8ed54"), "price" : 30.29 }, { "supplierProductId" : ObjectId("60513c6324ff42609769e15c"), "price" : 13.66 }, { "supplierProductId" : ObjectId("60513c6324ff42609769e16e"), "price" : 16.34 } ] } Получить объект с максимальной price? но мне нужна не только цифра но еще и айдишник. В идеале через addFields а не group
Maxim
Привет. Здесь уместны вопросы про MongoDB Realm?
Евгений
Привет. Есть папка с "потрохами" от mongo. Проект я снёс, к которому эта папка относится, но сама папка не удаляется - назначаю права позволяющие удалить, удаляю, но ... файлы тут же пересоздаются снова. Что это за механизм, где почитать, куда копать?
Dmitriy
Подскажите пожалуйста, можно ли получить добавленные документы в результате insertMany ?
Jamal
const db = require("../ext/db") var UserSchema = new db.Schema({ login: { type: String, required: true, index: { unique: true } }, password: { type: String, required: true } }) module.exports = db.model('User', UserSchema) почему не вставляется запись? они же там присутствуют.
wertaer
должно получиться
wertaer
так происходит пушто ты не указал и логин и пароль
Jamal
Я указал логин и пароль
Jamal
Там же видел
Jamal
В консоль вывожу
wertaer
после user раскомментируй строчки, а потом просто засейвь
wertaer
если уже ни в какую
wertaer
то updateOne()
Jamal
то updateOne()
Я хочу добавить запись, не обновить...
Jamal
Jamal
Блин, приеду домой , буду гуглить, пробовать)
wertaer
и user.save()
wertaer
...
...
Jamal
insert({login, password})
Так вроде пробовал, не получалось. Попробую ещё раз.
Jamal
или в 16 строке new Users({login, password})
А так не пробовал . Посмотрю
Jamal
И дам ответ )
Stepan
Всем салют. Помогите пожалуйста. Код ниже сейчас группирует по условию и выводит массив _id каждой группы. Не могу сообразить как его исправить что бы вместо Id лежали целиком сущности? const groupedBoxes = await Boxes.aggregate( [ { '$group': { '_id': { deliveryMethod: '$deliveryMethod', scheduledDispatchDate: '$scheduledDispatchDate', warehouse: '$warehouse' }, 'boxes': {'$push': '$_id'} } }, ] )
𝙈𝙖𝙠𝙨𝙤𝙣𝙞𝙘 🇷🇺
Друзья, всем привет! Я изучаю создание web приложения и у меня есть вопрос про базу данных, юзать буду MongoDb. Entity является музыкальный файл. В базе данных у меня будет, условно, название трека, его обложка и ссылка на сам файл и вот, я не понимаю как связывается база данных и файловое хранилище, где вообще должны лежать файлы картинок и аудиофайлов? В Mongo я храню ссылки на файлы, но куда эти файлы помещать? Подскажите пожалуйста🙏
𝙈𝙖𝙠𝙨𝙤𝙣𝙞𝙘 🇷🇺
Посмотрите в сторону Mongodb Gridfs. Если есть потребность в чем-то более сложном, то minio или ceph. Если нужно что-то проще, то просто каталог на вашем сервере тоже подойдёт.
Хорошо, я понял, но а могу ли я хранить файлы в каком-нибудь облаке? Яндекс Cloud, к примеру. Я закину в облако файлы и добавлю ссылки на файлы в монго, это тоже будет работать?
𝙈𝙖𝙠𝙨𝙤𝙣𝙞𝙘 🇷🇺
Можете. Я такой Подход использую. Файлы храню на с3
Отлично буду в эту сторону двигаться🔥
Данила
Всем привет, у меня имеются такие документы в коллекии: { _id: '123124124', ProductOrder: { _id: '453453453', RelatedParty:[], Agreement: [{Href:null}] } } Атрибут Href может быть либо string либо null либо не быть совсем, а находиться может как в RelatedParty так и в Agreement. Пишу такой запрос: db.productOrders.updateMany({$or:[ {"ProductOrder.Agreement.Href":{$exists:1}}, {"ProductOrder.RelatedParty.Href":{$exists:1}} ]}, {$unset: {"ProductOrder.Agreement.Href":""}, {"ProductOrder.RelatedParty.Href":""}}) На что запрос выдает { acknowledged: true, insertedId: null, matchedCount: 61897, modifiedCount: 0, upsertedCount: 0 } Тобишь он нашел такие доки в которых поле Href существует, но ничего не сделал. Вопрос почему и что сделать чтобы запрос работал так как я хочу.
Данила
ну или ваши мысли насчет того как писать запрос
Алексей
Всем привет. В транзакции выполняется Find документа_1, а затем Update документа_2. Во время выполнения этой транзакции другой клиент будет иметь возможность прочитать документ_1? Или будет ждать пока транзакция закончится?
Max
Ребят, что значит вложенная агрегация-популяция?
Алексей
Всем привет. В транзакции выполняется Find документа_1, а затем Update документа_2. Во время выполнения этой транзакции другой клиент будет иметь возможность прочитать документ_1? Или будет ждать пока транзакция закончится?
В доке нашел такие слова: db.collection.find() can be used inside multi-document transactions. - For cursors created outside of a transaction, you cannot call getMore inside the transaction. - For cursors created in a transaction, you cannot call getMore outside the transaction. Это значит что всё такие будет блокироваться? Надо самому короче проверить и всё.
Артём
всем привет, как можно в монго компасс отсортировать все значения чтобы они так и сохранились в коллекции?
🔰ш
Подскажите, есть пайплайн, в котором текущий матч выглядит как документ с объектом tag, у которого есть свойство score и mid Надо умножить этот score, на другой, который будет взят из объекта, типа {[mid]: score, [otherMid]: otherScore, ...} Как составить такой запрос?
js2me ♨️
Ооу
Anonymous
можно ли иметь field который будет consecutive. при удаление record будет высчитываться заново ?
Алекс
Ребят подскажите, подключаюсь к монге, ватерлайном config = { adapters: { mongo: mongoAdapter, }, // datastores datastores: { default: { adapter: 'mongo', url: 'mongodb://127.0.0.1:27017/dbName', }, }, }; вроде подключение есть, ошибок нету но при попытке вывести из бд аккаунт пустой массив приходит const acc = await Accounts.find({}); ЧЯДНТ?
Vova
Привет! Помогите с проблемой. Все стали секондари и нет мастера. Локальную базу не даёт удалить - пишет пока идёт репликация нельзя
Андрей
https://docs.mongodb.com/manual/tutorial/force-member-to-be-primary/
Vova
мастер упал, а слейвы имеют нулевой приоритет
Vova
на все изменения он ругается, что запукать нужно только с мастера
Anonymous
https://docs.mongodb.com/manual/reference/method/rs.reconfig/#mongodb-method-rs.reconfig Посмотри на параметр "force" : <boolean>
Anonymous
на все изменения он ругается, что запукать нужно только с мастера
В общем виде: cfg = rs.conf() cfg.members[0].priority = 0.1 // DEAD NODE cfg.members[1].priority = 1 // CURRENT SECONDSARY cfg.members[2].priority = 0.5 // ANOTHER rs.reconfig( cfg, { force:true } )
Vova
force:true не делал, Благодарю вас!
Диез
Всем привет. Кто работал с библиотекой mongoose? Через mongodb получается получить данные, а вот через mongoose получаю пустой массив. Схема правильная (Node js). Какие могут быть причины такого поведения ? P.S использую бесплатную базу с mongodb.com
Диез
Покажи схему Покажи как ты запрос в монгусе пишешь
https://pastebin.com/CPC3Vc3A В бд { _id: ObjectId(айди), id: 2 }
Google
Всем привет можете помочь в MOngodb как правильно вывести дынные по определёным датам у меня есть такой запрос но почемуто нечего не получаю ответ пустой массив