Nick
вот в драйвере это не так The behavior of limit() is undefined for values less than -2^31 and greater than 2^31.
Daniil
Нет надо было передать Infinity
Mongoose там внутри это переделывает явно, по сути обычно 0 передают, это эквивалентно безлимиту
Ма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) - должен валиться т.к это дубликат
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
Всем привет, я немного не догоняю, каким образом я могу закрыть доступ к своей базе по лог:пасс, которая стоит на удаленной впс, а сервак который к ней обращается развернут локально?
Ігор
Привет, а как можно достать только нужные колонки, вообщем нужно альтернативу к такой SQL
Ігор
Когда я юзаю .find() возвращает весь обьект, а нужно только нужные колонки
Ilya
есть select
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
Метод watch подходит для этого?
Да, но механизм требует устойчивости кода, иначе можно потерять изменения
Dezmunt
И смотря что у вас за задача
Мне просто нужно если были изменения в коллекции, то оповестить слушателя чтобы он эту коллекцию переполучил
Dezmunt
На сколько критично, получит ли слушатель изменения коллекции?
да мне сами изменения не нужны. Мне просто сам факт того то что были изменения
Sergey
Вы можете использовать watch, внутри кидать в очередь. И слушатель слушает очередь. Такой подход наиболее надежен
Dezmunt
Окай, попробую, спс
Владимир Т
всем привет
Владимир Т
сделал репликасет
Владимир Т
все работало, решил сделать ребут контрольный
Владимир Т
после чего оба сервера стали 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
Владимир Т
Оба 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
Я ищу клиентов, у которых в мероприятиях есть статус нужный мне
https://docs.mongodb.com/manual/tutorial/query-array-of-documents/#a-single-nested-document-meets-multiple-query-conditions-on-nested-fields
yopp
$elemMatch
Pavel
понял ребят
Pavel
Кроме того, что в аггрегации он работает?
Pavel
$filter
Pavel
виноват
Pavel
Так проще искать
Ilya
ну надо ему искать такое
Pavel
А фантазии ноль
yopp
Пожалуйста, воздержитесь от личных оценок
Pavel