
υρ∂ουя°°
11.07.2018
03:39:11

Evgeny
11.07.2018
07:40:40
Здарова парни!
Подскажите, пожалуйста, можно ли в монге построить запрос так, что бы результаты были отсортированы по предустановленному списку. Типа так: В БД есть apple, pear, orange. Я хочу чтобы в ответе мне пришли сначала все pear, потом все apple, и потом все orange. Здесь обычный .sort({type: 1}) не подойдет. А по другому я не оч умею.
И еще связанный с этим вопрос. Хочу что бы мне в ответе пришли все pear, но если ни одного pear не найдено, то тогда все apple, а если и их не найдено, то тогда все orange. Здесь я вижу решение - со стороны ноды проверять результат, и посылать следующий запрос, если предыдущий ничего не вернул. А можно ли сделать это одним запросом?

Ruslan
11.07.2018
07:56:37
Это все разные коллекции?


Yurii
11.07.2018
07:58:36
Здарова парни!
Подскажите, пожалуйста, можно ли в монге построить запрос так, что бы результаты были отсортированы по предустановленному списку. Типа так: В БД есть apple, pear, orange. Я хочу чтобы в ответе мне пришли сначала все pear, потом все apple, и потом все orange. Здесь обычный .sort({type: 1}) не подойдет. А по другому я не оч умею.
И еще связанный с этим вопрос. Хочу что бы мне в ответе пришли все pear, но если ни одного pear не найдено, то тогда все apple, а если и их не найдено, то тогда все orange. Здесь я вижу решение - со стороны ноды проверять результат, и посылать следующий запрос, если предыдущий ничего не вернул. А можно ли сделать это одним запросом?
aggregation framework + facet (https://docs.mongodb.com/manual/reference/operator/aggregation/facet/) и сразу сделать паралельно необходымие расчёты, а потом с на этапе project отсеять ненужные.
Но это сложный путь. 1 запрос, но кучу гемора. Проще действительно разрулить все на уровне ноды и нескольких запросов…

Google

Evgeny
11.07.2018
08:24:42

Ruslan
11.07.2018
08:26:28
А чем тебя не устраивает сортировка по типу?

Evgeny
11.07.2018
08:27:04
если именно .sort({type: 1}), то будет не правильный порядок
Мне нужен свой, заранее определенный: pear, apple, orange

Ruslan
11.07.2018
08:28:03
А, ну да, только $facet

Evgeny
11.07.2018
08:29:24
Буду на уровне ноды решать. Спасибо за ответы)

Roman
11.07.2018
10:34:40
Подскажите логи хранить в монге это нормально?

Nick
11.07.2018
10:36:58
хранить - да, обрабатывать - нет
ну и опять же если вы сначала логи приводите к определнному виду, по которому уже можно построить вменяемые запросы, которые вы уже все определили, то почему бы и нет. но про фултекст забудьте

yopp
11.07.2018
10:46:22
Я ещё раз задам вопрос: о каком объёме новостей и каком количестве пользователей идёт речь? Не обязательно точные цифры, порядка будет достаточно

M
11.07.2018
11:09:41

Google

Roman
11.07.2018
11:20:20

Nick
11.07.2018
11:56:28

Roman
11.07.2018
12:18:34
имя таблицы ид
дата
база вся в мускуле

Nick
11.07.2018
12:28:43
я спрашиваю о другом, вы уже наметили как будут выглядеть события и какие критерии для поиска будете использовать? из опыта при работе с логами всегда есть необходимость поискать рендомную фразу по логам, или опять же вычленить часть строки и сделать группировку по ней - вот это все в монге будет очень больно

yopp
11.07.2018
13:38:47
Поиск по тексту везде очень больно.

Михаил
11.07.2018
15:04:24
Подскажите, есть у кого ссЫлка на чат разработчиков 1С ?

/dev/null
11.07.2018
23:29:51

Alex
12.07.2018
06:40:14
Всем привет, пробую установить mongo. Возникла следующая проблема - на скрине. Что делал:

Banschikov
12.07.2018
06:41:09

Alex
12.07.2018
06:41:53
Переменные среды установил, монго в следующей папке c/mongodb/bin => mongo.exe и тд

Banschikov
12.07.2018
06:43:13
Через локалхост коннектишся?

Alex
12.07.2018
06:52:29
ну, да, видимо) - 27017
а так не надо? мне просто в новинку вся эта тема - могу где-то по незнанию нехило так затупить

Banschikov
12.07.2018
06:54:27

Alex
12.07.2018
07:03:54
пока ничем) я думал я этой командой что-то вроде инициализации должен провести, ну попробовать создать базу (видимо к которой можно обратиться по 27017 порту)
может у тебя есть чтиво какое актуальное для чайника по mongo? ну чтоб я тут особо внимания не требовал)

Google

Banschikov
12.07.2018
07:17:52
Почитай документашку по монге
https://docs.mongodb.com/tutorials/connect-to-mongodb-shell/
Тебе нужен mongo-client

Alex
12.07.2018
07:31:48
ок, спасибо, буду изучать

vitalii
12.07.2018
09:35:27
Парни , кто поможет , а то не пойму немного .
Сущность пользователя содержит базовые поля (имя и пр.)
Сущность сообщения содержит senderId и receiverId (id пользователей), а также тело сообщения.
Создать роут, который возвращает всех пользователей, с которыми общался пользователь с данным id.find().or([{ senderId: 0 }, { receiverId: 0 }]) .then(message=> { а тут искать в пользователях эти id ? })


Nick
12.07.2018
09:51:32
Парни , кто поможет , а то не пойму немного .
Сущность пользователя содержит базовые поля (имя и пр.)
Сущность сообщения содержит senderId и receiverId (id пользователей), а также тело сообщения.
Создать роут, который возвращает всех пользователей, с которыми общался пользователь с данным id.find().or([{ senderId: 0 }, { receiverId: 0 }]) .then(message=> { а тут искать в пользователях эти id ? })
сейчас будет не упрек, а пожелание. видимо полное отсувие опыта работы с данными, поэтому предлагаю сначала реализовать все в коде, чтобы понять что будет делать база для получения такого же результата. а потом уже эти стадии оформить в виде запроса к бд, а то без этого понимания вы даже не сможете правильно выбрать что использовать из возможностей бд.
вообще ваш случай легко в монге решается через aggregation framework


Игорь
12.07.2018
13:39:13
Господа только начинаю знакомиться с монгой. Подскажите пожалуйста по организации модели. Мне по сути нужно хранить заказы, где указан user, описание заказа, так же в заказе будут товары количество каждого и цена. И еще список где будут юзеры и некоторые поля. Я так полагаю мне нужны будут коллекции users orders items. Схема orders будет выглядеть что-то типа
{
_id:'',
order_name:'',
some_fields:.....
....
created_by: ссылка_на_user,
items: [{item:ссылка_на_item,count:'2',price:'11',}],
storages:[{storage:ссылка_на_storage,count:1}]
}
Я просто прочитал что типа монга не очень хорошо работает с ссылками на другие документы. Или я что-то не понял?


Nick
12.07.2018
13:54:02
имитация джойна делается только через lookup, как следствие если вам надо много джойнов в классической sql модели, то лучше бы посмотреть в сторону sql
и в монге нет понятия "ссылки", это лишь рекомендованный способ задать ссылку, вся механика по вытаскиванию связанного объекта будет лежать на вас, ну или на драйвере

Игорь
12.07.2018
14:36:36

Nick
12.07.2018
14:37:06
да

Игорь
12.07.2018
14:37:34
Понял, спасибо

Oleg
12.07.2018
14:53:22
мы пользовались DbRef
под копотом в драйвере по сути еще 1 query отрабатывает
ну или столько сколько рефов будет

Alexey
12.07.2018
16:50:28
Коллеги, подскажите, имеется GeoJson, типа Polygon, нужно проверить что другой GeoJson (тип Point), попадает в выше упомянутый полигон
монга 3.4
корректно ли вообще сравнивать Point && Polygon?
сейчас мой запрос выглядит так
{'geoJson':{$geoIntersects:{$geometry:{'type':'Point', 'coordinates':[30.5240501,50.4501071]}}}}
и ничего не находит

Aртемка
12.07.2018
18:28:43
как можно вытащить все елементы с колекцыи? find() не работает только findOne

Mikhail
12.07.2018
18:30:21

Google

Aртемка
12.07.2018
18:35:11

Mikhail
12.07.2018
18:36:48
Ну потому что это массив будет

Aртемка
12.07.2018
18:37:25
да

Mikhail
12.07.2018
18:38:00
да
Как ты собираешься читать поле из массива?

Aртемка
12.07.2018
18:38:07
как выводить масивом?

Mikhail
12.07.2018
18:38:08

Aртемка
12.07.2018
18:44:55

Mikhail
12.07.2018
18:45:41

Aртемка
12.07.2018
18:46:21

Nick
12.07.2018
19:09:40

Aртемка
12.07.2018
19:14:47

Mikhail
12.07.2018
19:16:10
Ну а просто console.log(organizarion) что выводит?

Mikhail
12.07.2018
19:16:39
Какой-то странный цикл))

Mikhail
12.07.2018
19:17:53
Стоп. Что это вообще такое? Что в переменной query?

Aртемка
12.07.2018
19:18:24

Mikhail
12.07.2018
19:18:51

Aртемка
12.07.2018
19:19:11

Google

Aртемка
12.07.2018
19:19:19
но и без квери андеф

Mikhail
12.07.2018
19:20:09

Aртемка
12.07.2018
19:24:49
спасибо решилось

Naught
12.07.2018
22:28:21
Ребят, подскажите такую штуку. Есть поле данных, в монге, которое, как мне кажется, должно быть массивом опциональных объектов вида {key1: val1, key2: val2}. Как такое прописать в монге, и самое главное - как потом сохранять в такое поле, если приходит просто объект вида ключ:значение ?

Alex
12.07.2018
23:29:44