powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / Как вернуть уникальное свойство time, при условии наличия других свойств? (Mongodb)
3 сообщений из 3, страница 1 из 1
Как вернуть уникальное свойство time, при условии наличия других свойств? (Mongodb)
    #39932139
manking
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Как правильно построить запрос агрегацию чтобы вернуть
уникальные значения time, для тех случаев когда присутствует category и FACT и PLAN?

Вот как выглядят документы в коллекциях:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
{ 
    "category" : "FACT", 
    "time" : "2019",     
},
{ 
    "category" : "PLAN", 
    "time" : "2019",     
},
{ 
    "category" : "PLAN", 
    "time" : "2020",     
}




То есть в данном случае на выходе должно получиться
Код: javascript
1.
[{time: "2019"}]


так как для time 2020 присутствует только категория PLAN.
...
Рейтинг: 0 / 0
Как вернуть уникальное свойство time, при условии наличия других свойств? (Mongodb)
    #39933091
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
manking,

монги под рукой нет сейчас, но как-то так:
Код: javascript
1.
2.
{ $group: { _id: "$time", categories: { $addToSet: "$category" } },
{ $match: { categories: { $all: ["FACT" , "PLAN"] } } }
...
Рейтинг: 0 / 0
Как вернуть уникальное свойство time, при условии наличия других свойств? (Mongodb)
    #39933462
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрался до монги, вот так:
Код: javascript
1.
2.
3.
{ $group: { _id: "$time", categories: { $addToSet: "$category" } } },
{ $match: { categories: { $all: ["FACT" , "PLAN"] } } },
{ $project: { _id: 0, time: "$_id" } }
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / Как вернуть уникальное свойство time, при условии наличия других свойств? (Mongodb)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]