Roman
Roman
Nick
вот в драйвере это не так
The behavior of limit() is undefined for values less than -2^31 and greater than 2^31.
Roman
Roman
Roman
Маrаt
Хочу добавить возможность чтобы юзеры могли форкать себе и менять контент под себя. Через что лучше клонирование объектов делать? Просто get и потом bulk insert?
Sardor
Дорогой дневник, попытка номер четыре))
Ребят, подскажите, пожалуйста, как получить позицию документа в списке, отсортированном по двум критериям?
Я использовал .count() для сортировки по одному критерию, но мой вариант не работает для двух: https://t.me/mongodb_ru/89972
Максим
Sardor
Каунт это не сортировка.
да, понимаю, вот полный запрос:
model.find({
curPoints: { $gt: lodger.curPoints },
dorm: lodger.dorm
}).sort({ curPoints: -1, lastName: 1 }).count()
- с одним критерием сортировки все ок, с двумя не работает, что логично
Illia
Привет всем. Посоветуйте решение:
Нужно чтобы сет полей был уникальным и не повторялся, как мне этого добиться? Композитный, уникальный индекс не помогает
Например:
save(new Entity(1, 1, 1);
save(new Entity(1, 1, 1) - должен валиться т.к это дубликат
Viktar
Sardor
Что то в этом запросе, я вообще не вижу смысла в сортировке. Зачем сортировать, если нужен Каунт?
Есть список документов, у каждого из которых есть поля curPoints и lastName. Мне нужно построить рейтинг по убыванию curPoints и получить место конкретного документа в этом рейтинге по значению его curPoints
Делаю я это так:
model.find({
curPoints: { $gt: lodger.curPoints },
dorm: lodger.dorm
}).sort({ curPoints: -1 }).count()
Но тут не учитываются документы с таким же количеством curPoints (т.к. используется $gt), и если их несколько (у разных документов, например, одно и то же значение `curPoints = 100, у всех будет одно и то же место
Поэтому мне нужно использовать $gte и отсортировать документы с одинаковыми значениями curPoints еще по полю lastName, вот это я уже без понятия, как сделать (то, что пытался — не работает)
RdfBbx
Добрый день! Я только начал изучать монго, подскажите пожалуйста:
У меня есть модель User.
Внутри User лежит документ Ecdsa.
У Ecdsa есть operators: [{objectId от документа UserOperator}]
UserOperator содержит в себе айдишник Operator
Подскажите, как правильно добавлять нового UserOperator? В sql базах, я проверял есть ли юзер, потом есть ли оператор. Если оператор есть создавал UserOperator и добавлял его в массив юзероператоров в юзере. Тут тот же принцип? Сколько запросов к базе мне понадобится для добавления UserOperator?
Евгений
может кто-то посказать как сагрегировать два DISTINCT, чтобы получить на выходе один объект с двумя массивами
Sergei
Всем привет, я немного не догоняю, каким образом я могу закрыть доступ к своей базе по лог:пасс, которая стоит на удаленной впс, а сервак который к ней обращается развернут локально?
Artem
Ігор
Привет, а как можно достать только нужные колонки, вообщем нужно альтернативу к такой SQL
Ігор
Когда я юзаю .find() возвращает весь обьект, а нужно только нужные колонки
Ilya
есть select
Viktar
Vened
Можно указывать несколько параметров, например, вот так:
> db.users.find( { username: “joe”, age: 27 } );
Иногда бывает необходимо получить какие то конкретные поля из документов. В этом случае запрос выглядит так:
> db.users.find( { }, { username: 1, email: 1 } );
В итоге получим всех пользователей только с полями «username» и «email» + поле "_id", которое возращается всегда по умолчанию. Если поле "_id" или какое-либо другое не нужно, мы можем это указать вот так:
> db.users.find( { }, { username: 1, email: 1, _id: 0 } );
Dezmunt
mongoose. Мы как то можем слушать изменения в БД и потом обрабатывать это событие?
Dezmunt
Метод watch подходит для этого?
Sergey
Dezmunt
И смотря что у вас за задача
Мне просто нужно если были изменения в коллекции, то оповестить слушателя чтобы он эту коллекцию переполучил
Sergey
Sergey
Вы можете использовать watch, внутри кидать в очередь. И слушатель слушает очередь. Такой подход наиболее надежен
Dezmunt
Окай, попробую, спс
Sergey
Владимир Т
всем привет
Владимир Т
сделал репликасет
Владимир Т
все работало, решил сделать ребут контрольный
Владимир Т
после чего оба сервера стали secondary
Владимир Т
что делать?
Sergey
А какой командой вы создавали реплику, и с какими параметрами запускается монга
Владимир Т
Владимир Т
ExecStart=/usr/bin/numactl --interleave=all /u01/app/mongo/bin/mongod --auth --quiet --config /u01/app/mongo/data/mongo.conf
Владимир Т
в mongo.conf
Владимир Т
replication:
replSetName: rs0
Sergey
Владимир Т
Оба rc0?
я сделал так: указал в конфиге replSetName: rs0, потом стартанул systemctl start mongo.service, затем я сделал rs.initiate() потушил сервер и скопировал его
Владимир Т
потом запустил оба
Владимир Т
и на первом добавил второй
Владимир Т
все работало
Владимир Т
потом я решил сделать тестовый перезагруз
Владимир Т
после чего у меня 2 secondary
Sergey
Скорее всего я вам не смогу помочь, тут нужны с админы со стажем
Владимир Т
очень жаль
Sergey
И меня сейчас забанят, но Я бы почитал документацию, скорее всего там есть ответ
Mike
Добрый день, коллеги! Как можно оперативно и без костылей изменить данные в бд под новую схему?
Допустим, я изменил тип поля uid с number на string и переименовал поле name в username.
Схемы для многих других коллекций тоже изменились, а данные сохранить хочется.
Есть идеи, как можно этот процесс автоматизировать?
Pavel
Ребят, как??
Pavel
Как этот _id пробросить?
Ilya
эм всм
Ilya
че ты делаешь
Pavel
Тупанул
Pavel
Мне нужно отсеивать пользователей по статусу и _id
Pavel
Я ищу клиентов, у которых в мероприятиях есть статус нужный мне
Pavel
Всю голову изъел
Pavel
Ай нид хелп
Roman
find
Ilya
ну да, тут find нужен
Pavel
какой find?
Ilya
ну самый обычный
Ilya
https://stackoverflow.com/questions/14040562/how-to-search-in-array-of-object-in-mongodb
Pavel
Это понял
yopp
$elemMatch
Pavel
понял ребят
Pavel
Кроме того, что в аггрегации он работает?
Pavel
$filter
Pavel
виноват
Pavel
Так проще искать
Ilya
ну надо ему искать такое
Pavel
А фантазии ноль
yopp
Пожалуйста, воздержитесь от личных оценок
Pavel