Dezmunt
не импортируется бд в json, импортируется в csv но ломаются массивы. Что с этим можно сделать?
Viktar
не импортируется бд в json, импортируется в csv но ломаются массивы. Что с этим можно сделать?
Дайте пожалуйста больше информации как и для чего вы делаете.
Юрий
Подскажите, пожалуйста, как решить: findOneAndUpdate Схема например { field1: value1, field2: { subfield1: subvalue1, subfield2: subvalue2 } } Если отправить update как { field1: value1, field2: { subfield2: subvalue2 } } То в базе удалится поле subfield1 Если добавить overwrite: true, то subfield1 не удалится, но примет значение по умолчанию (пусто) Что я делаю не так?
Guille
Hello everyone, is there anyone who knows how I can filter on a string attribute that indicates a date of the form "Day Nth of the month, YYYY"? I want to select all dates that are more than 10 years old.
Guille
Sorry for talking in english, I dont speak Russian
Endo
can you show some sample data for us for better understanding of a problem?
Guille
have you tried using regex?
Thank you for yous answer. I tried but I could not solve it
Guille
Here it is. I want to filter the "vehicle.registry date" which its like "13th of January, 1990"
Endo
that's probably not a real data, huh?
Guille
I would like to filter and get all the documents with a registry date that is more than 10 years old. Hope you can help me
Endo
it's more like a scheme of your data
Guille
Its a public sample, it has more than 50k documents
Endo
well you can send like 3-4 strings for example
Guille
It's an exercise for the University
Endo
without screenshotting it
Guille
Of course
Guille
Endo
I guess someone who gave you that excercise had intent to solve it by some certain way for you
Endo
so I believe if we manage to find these documents by regex it would not be real solution
Guille
If the date were a number, with $lte 2010 I could do it, but being a string and in this way I can't solve it
Guille
😔😔
Endo
you can substring last 4 characters of these strings
Guille
How??
nzjdMFpV
Сап, если кто онлайн. Я хочу в агрегации использовать метод $filter и в качестве параметра input передать что-то типа ссылки на массив в документе. Сейчас я пишу что-то типа input:"$3_param.items", но я хочу динамически редактировать это поле согласно содержимому другого поля в документе (может быть "$4_param.items", "$5_param.items" и тд). С помощью метода $concat я создаю абсолютно такую же строку типа $3_param.items, однако монга жалуется, что в инпут нужно передавать массив а не строку. Как мне выполнить выражение $3_param.items записанное в виде строки?
.
подскажите пожалуйста, в каком направлении двигаться хочу у всех объектов коллекции сократить определенный массив в два раза при условии что в нём(массиве) у них больше одного значения
Dmitriy
Коллеги, добрый день. ПОдскажите, кто работал в монге с числами после запятой. Кто что использовал? Просто нужна максимальная точность в числах, так как там работа с деньгами, с % и например есть числа 1, а от него нужно вычесть 14% а от этих 14% еще разбить на 3-5 развых частей. И вот тут нужно что бы числа максимально были точными
Dmitriy
чистал за варианты это умножать на 1000000 и хранить все int
Dmitriy
Вот коллеги написал с какой проблемой столкнулись: в монге нельзя вставить 0 не интом, т.е. я не могу вставить 0 и указать тип дабл. а тип привязывает после создания поля и потом я не могу добавлять туда числа с точкой хранить цены строкой точно не вариант, нам нужны атомарные операции
Александр
чистал за варианты это умножать на 1000000 и хранить все int
а зачем на такое большое число? Мы на 100 умножаем и храним по факту копейки вместо рублей.
Dmitriy
потому что числа могут быть меньше копейки
Dmitriy
так как есть есть 100 копеек, из них берем 14% это 14 копеек, и нужно 5% от 14 копеек вычесть
Nick
если у вас по другому, то налоговая скорее всего не будет рада
Dmitriy
там сотые доли копеек
Александр
потому что числа могут быть меньше копейки
в общем вариант с интами вполне рабочий
Nick
там сотые доли копеек
надеюсь что ваши юристы подстелили солому и это действительно не является проблемой
Nick
а по задаче выше скинул ссылочку, там все описано
Dmitriy
надеюсь что ваши юристы подстелили солому и это действительно не является проблемой
ну налоговая это уже другой вопрос. Там просто идёт распределение доходов от продаж в % соотношении
Nick
охохо "доходы от продаж")) не зря я сразу юристов вспомнил))
Nick
ну ладно это не предмет
Lev
А по умолчанию монга отвечает ОК когда на диск записала или в память?
Lev
Ого, а пишет в память.
Dr
Коллеги, есть мысли, почему в обычном репликасете, без шардирования, на одну и ту же ноду (обычную secondary) периодически падает высокая нагрузка на Монго?
Dr
охохо "доходы от продаж")) не зря я сразу юристов вспомнил))
Если напротив "доходов от продаж" речь идёт о "сотых долях копеек", то уменя обычно плохие новости для таких компаний. ;)
Nick
Если напротив "доходов от продаж" речь идёт о "сотых долях копеек", то уменя обычно плохие новости для таких компаний. ;)
если это сотая доля на операции, а колво операций по юзеру исчиляется миллионами, то все становится наоборот
Dr
тяжелый запрос
Да, но почему на одну и ту же ноду? На других таких спайков по процу нет. :(
yopp
Эффективнее всего 64 битное число, с актуальным для вас множетелем и выбрать единый механизм округления до целой еденицы. Для всяких RTB и прочих рекламных задач обычно хватает 1/1,000 или в редких случаях 1/1,000,000 цента. Надёжнее всего использовать bankers round, оно позволяет в получить итоговый баланс операций с минимальным расхождением
Sergey
Добрый вечер. Подскажите пожалуйста, использую gridfs и python. Возможно ли получить из mongo только часть документа? К примеру - я храню очень большие файлы CSV в gridfs и хочу иметь возможность сделать запрос и получить в python только первую строку документа (то есть названия столбцов). Сейчас я получаю весь документ около 10 Гб и открываю его в pandas. Что не очень правильно как мне кажется для задачи просмотра шапки файла.
Vladyslav
Всем привет, как обновить поля во вложенном массиве данными с других полей на том же уровне ? Нужно поля estimatedStartDate, estimatedDueDate обновить данными с полей startDate, endDate Делаю такой запрос: db.getCollection('cards').updateMany({ _id: ObjectId("5f4efc12c18a560027ab3646"), 'lineItems.jobs.status': 'Done', 'lineItems.jobs.estimatedStartDate': { $exists: false }, 'lineItems.jobs.estimatedDueDate': { $exists: false } }, { $set: { 'lineItems.$[].jobs.$[j].estimatedStartDate': '$startDate', // тут хз как забрать контекст 'lineItems.$[].jobs.$[j].estimatedDueDate': '$dueDate', // и тут } }, { arrayFilters: [ { 'j.status': 'Done', 'j.estimatedStartDate': { $exists: false }, 'j.estimatedDueDate': { $exists: false } } ], multi: true }) Схема: { ... status: String, lineItems: [{ jobs: [{ startDate: Date, endDate: Date, }] }] ... }
Ffff
Всем привет, объясните пожалуйста как строить связи между коллекциями при проектировании API ? по _id ObjectId или по кастомным id, полученным из внешнего источника
Ffff
у нас есть несколько схем - коллекций, перед нами стоит задача связать их для работы с api, каким образом это можно сделать?
A
{ "_id" : ObjectId("5f5a19d84413561b5ebc0969"), "id" : 36454, "name" : "124 Spider (348_)", "yearFrom" : ISODate("2016-03-01T00:00:00Z"), "yearTo" : null, "brandId" : 3854, "__v" : 0 }
A
{ "_id" : ObjectId("5f92c5beaac27922477977a8"), "orderList" : [ ], "username" : "name", "lastName" : "last name", "phoneNumber" : "8880", "dateRegister" : ISODate("2020-10-23T11:59:58.612Z"), "__v" : 0 }
Ffff
как например связать две этих схемы между собой?
Anonymous
Привет, нормальная ли идея в монге хранить изображения\видео\гифки и т.п, или проще все в сторонний сервис грузить(если да то в какой посоветуете), а у себя только ссылки?
Anonymous
понял, спасибо
Anton
Ребята! Есть папка со всеми бд, как ее можно заресторить в монгу?
.
я ищу людей по id вк я сделал вот так db.users.createIndex({"id" : 1}) я правильно понимаю, что от этого скорость поиска увеличиться?
ktts
Здравствуйте. Как можно выполнить поиск в нескольких коллекциях по разным полям одним запросом?
ktts
Это я знаю. Но я не могу понять как искать по разным полям
Дмитрий
С помощью $lookup например
ktts
можно пример кода?
Kenan
Это я знаю. Но я не могу понять как искать по разным полям
Можно было бы загуглить так: "join mongodb"