Bogdasar
db.partner.find({id:2, 'settings.integration.others.id':1}, {'settings.integration.others.id':1})
Почему то этот запрос выводит все id, хотя должен только первый. Почему?
Александр
Доброго дня, не могу вставить documentt в double nested массив в java коде, подскажите, пожалуйста как правильно это реализовать, ниже скрин структуры документа в double nested массив которого нужно вставить новый объект и тот способ который я пытаюсь безуспешно применить для этого
Александр
Александр
Александр
help please...google в этом вопросе мне помочь не может, нигде нет наглядного примера как реализовать конкретно "to double nested array inserting"
Maksim
Добрый вечер! Пытаюсь сделать запрос с приминением индексов. и чет не получается. Как сделать так, чтобы монга делала запрос через компауд индекс?
Maksim
Maksim
Nick
Maksim
Там еще к этой коллекции прикрепляется еще пару
Maksim
Одна из которых тож на тыщ 100
Bogdasar
Есть такое выражение:
db.partner.update({id:2}, {$set : {"class.pupil.math.0.active" : true}}),
которое выставляет поле active в первом элементе массива math в true.
Однако это происходит лишь при наличии этого поля, как добавлять это поле и выставлять в соответствующее значение, если оно отсутствует?
Nick
Vlad
Всем привет! Хочу сделать деплой своего api на digital ocean но когда происходит deploy появляется такая ошибка, может кто-то сталкивался?
Andrey
lmn
Ну написано что хесчек упал
Vlad
pvlmrzv
Всем привет!
Как в $project запхать поле которое является полем первого элемента из nested массива ?
pvlmrzv
mewton
Привет, а можно как-то уменьшить количество? Это за день. В коде пробегаю по коллекции (3к документов) с десяток раз. И через bulk вставляю в другую коллекцию примерно столько же доков.
Владислав
Всем привет!
Может кто-нибудь посмотреть ERD диаграмму, первый раз проектирую не реляционную БД
Alex
Владислав
Дucid
MDWIT
Владислав
Я там ошибся, категория это агрегация тоже
Владислав
Получилось 3 сущности: item, place, photo
Alexander
Alexander
Но стоит подумать о переиспользуемости.
Вот photo. Точно ли бывают фотографии, которые шарятся между сущностями? Нужно ли централизованно менять путь к фотографии? Ну типа, возможно, это лишняя сущность и достаточно сохранить путь, вместо айдишника.
Владислав
Andrew
Подскажите пожалуйста, у меня в аггрегации получается два объекта с массивами, а я хотел бы их объединить, в какую сторону смотреть? день бьюсь, понять не могу.. спасибо!!!
например:
charts:[{name:'dssf'}],
charts_new:[{type:'bar'}]
а хочу в итоге
charts:[{name:'dssg',type:'bar'}]
Nick
Andrew
Andrew
пока у меня такая конструкция
{
'from': 'query',
'let': {'query_id': '$query.id'},
'pipeline': [
{'$match': {'$expr': {'$eq': ['$query_id', '$$query_id']}}},
{'$project': {
'_id': false,
'query.type': '$type',
'query.query': '$query'
}}
],
'as': 'charts_new'
}
Andrew
но она выдает chart_new, соответственно, а я хотел бы добавить полученные поля в элементы массива chart
Nick
да, да именно
набор полей фиксирован у тех доков что нужно добавить в существующие?
Andrew
Andrew
Andrew
Andrew
по сути выглядит так - в chart у меня пустое поле query, а я хочу запихать его из результата пайплайна
Andrew
в монге я полный профан, пытаюсь по-наитию... пытался читать но не могу понять логики моих действий:)
Nick
да, фиксирован
и последний вопрос, вы хотите просто выборку получить или обновить данные в базе?
Andrew
Nick
только выборку
через $zip из массивов получите один,в котором будут подмассивы с доками из обоих коллекций. Дальше через $map проходите по новому массиву и там в $in указываете как собрать ваш новый объект из двух имеющихся. Тут я честно не уверен, но должна сработать $mergeObjects в который передать надо первый и второй элементы подмассива через $arrayElemAt
Andrew
Спасибо огромное! Буду пробовать в этом направлении
J
Добрый день. Пользуюсь монгусом и беру данные из коллекции курсором. Не могу найти как прокинуть timeout, чтобы курсор не закрывался.
Версия монгуса - 5.13.14.
Подскажите, куда надо прокинуть, пожалуйста.
lmn
в чат по джс?
J
в чат по джс?
Ну, это очень близко к монго, может здесь кто подскажет
Vadim
Всем привет, подскажите пожалуйста что будет быстрее агрегация или find или одно и тоже?
Nick
Nick
по сути во всяких фрейморках на find завязываются, т.к. однозначно придут данные только из одной коллекции и их можно безболезненно смапить на сущности связанные с этой коллекцией. А агрегации предполагают изменения и редко где можно простым способом смапить результат на сущность и нужно руками это делать
Nursultan
Всем привет, можно простыми словами для чего нужен,
- mongoist
- mongo-cursor-pagination
Вот прям простым языком?!
Nursultan
Ребята, хелп
Tim T.
Всем привет, можно простыми словами для чего нужен,
- mongoist
- mongo-cursor-pagination
Вот прям простым языком?!
- mongoist - это библиотека-надстройка, позволяющая обращать все синхронные запросы к монге в асинхронные
- mongo-cursor-pagination- это скажем тебе нужно возвращать из монго коллекции не все (например) 100 строк, а фрейм например с 5ой строки до 15ой и/или с 36ой стпоки до 56ой - т.е. данные тянутся не все, а «порезанные» на порции (с указанием сколько строк в наборе) - нужно это в основном, чтобы не забивать канал передачи данных и снизить потребление памяти на клиенте, все манипуляции с наборами данных отдаются серверу монги (это нужно учитывать)
Tim T.
Nursultan
of Astora 𒉭
как можно внутри find использовать map?
Alexandr
Доброго времени суток!
Примерная структура БД:
— users [_id]
— channels [_id, title, users[]]
— posts [_id, channel_id, user_id, text]
То есть есть каналы в которые пользователи пишут поcты.
Мне нужно достать все сообщения из канала, но только если пользователь участник этого канала (userid in channels.users[]).
На SQL я бы сделал примерно так:
 SELECT p._id, ... FROM channel c JOIN posts p ON p.channelid = c._id WHERE c._id = 123 AND some_usser_id IN c.users
Идея в том что б сделать это за ОДИН запрос (то есть не проверять сперва участвует ли userid в channel-e, а потом выбирать все сообщения по channel_id)
Заранее спасибо за подсказки
of Astora 𒉭
не подскажите как делать поиск по названию категория
в subcategory с помощью ref принимаю category
of Astora 𒉭
Вячеслав
доброе утро. Есть проблема с тем, что в 1 случае версия документа обновляется, а во втором нет. Куда обратиться - не знаю. Если есть кто знает - прошу помощи
Харамбус
Я вот на фото посмотрел и вообще не понял о чем вы
Харамбус
Return await в данном случае смысла писать нет
Владислав
Ребят, кто на гошке писал rest на монго?
🐝 dmitriy
Добрый день! Подскажите как зарегать аккаунт https://cloud.mongodb.com ? Даже под ВПН не пускает
Nick
Albert
Вячеслав
Вячеслав
если как я отправил - толку нет
Alexandr
Доброго времени суток!
Примерная структура БД:
— users [_id]
— channels [_id, title, users[]]
— posts [_id, channel_id, user_id, text]
То есть есть каналы в которые пользователи пишут поcты.
Мне нужно достать все сообщения из канала, но только если пользователь участник этого канала (userid in channels.users[]).
На SQL я бы сделал примерно так:
 SELECT p._id, ... FROM channel c JOIN posts p ON p.channelid = c._id WHERE c._id = 123 AND some_usser_id IN c.users
Идея в том что б сделать это за ОДИН запрос (то есть не проверять сперва участвует ли userid в channel-e, а потом выбирать все сообщения по channel_id)
Заранее спасибо за подсказки
Доброго времени суток, ответ на мой вопрос:
db.conversation.aggregate([
{ $match: {
'_id': ObjectId("6335c3655d561ae644b4a3e4"),
'participants' : "164",
}
},
{ $limit: 1, },
{ $lookup: {
from: 'message',
let: { c_id: '$_id' },
pipeline: [
{ $match: { $expr: { $eq: [ '$conversation_id', '$$c_id' ] } } },
{ $skip: 4 },
{ $limit: 2 },
],
as: 'messages',
},
},
{ $project: {
_id: 0,
messages: 1
}
}
]).pretty();
Tikhon
Кто генерирует objectId? Здесь вычитал https://stackoverflow.com/questions/5817795/how-are-mongodbs-objectids-generated , что "MongoDB database drivers by default generate an ObjectID identifier that is assigned to the _id field of each document.".
Но в другом чате мне сейчас написал человек, что objectId генерирует не драйвер. Где правда?
yopp
of Astora 𒉭
ребят, не подскажите как делать поиск по _id
Nick
of Astora 𒉭