Привет ребята. Подскажите пожалуйста, у меня есть коллекция Orders. [

{
"id": 1,
"totalPrice": 500,
"books": [
{
"_id": 123,
"title": "some"
},
{
"_id": 222,
"title": "2222"
}
]
},
{
"id": 2,
"totalPrice": 400
"books": [
{
"_id": 123,
"title": "some"
},
{
"_id": 333,
"title": "3333"
}
]
}
]
Мне нужно сделать выборку такую, чтобы на выходе получить:
[
{
"id": 1,
"totalPrice": 500,
"books": [
{
"_id": 123,
"title": "some"
}
]
},
{
"id": 2,
"totalPrice": 400
"books": [
{
"_id": 123,
"title": "some"
}
]
}
]
Тоесть сделать как-бы фильтрацию по id в каждом массиве books
Я пытался сделать так:
db.collection.find({
"books": {
"$elemMatch": {
"_id": 123
}
}
})
Но не работает, подскажите пожалуйста, как можно пофиксить?

5 ответов

6 просмотров

Попробуй просто "books._id" : 123

Vadym- Автор вопроса
Vadym
нет, выдача такая же

Ааа, не заметил что фильтрация нужна.

Vadym
нет, выдача такая же

Тогда агрегации и это https://docs.mongodb.com/manual/reference/operator/aggregation/filter/

Vadym- Автор вопроса

Похожие вопросы

Обсуждают сегодня

Ребята, всем привет, у меня такой вопрос, заказчику нужно чтобы бот собирал данные о количестве просмотров на определенных постах, уже все перерыл, как то можно реализовать та...
AdmM
3
Anyone wants to team up for kaggle competition?
Asmi S
3
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Всем привет. Подскажите, почему не меняется значение поля при переключении сайта?
Alexander Peterikov
11
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
Добрый день, не подскажите, если в OC-V3 поменять страндартную директорию /storage/ на /storage2/ - не будет сильно много проблем ?
Max Dubovsky
32
Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Image,audio,text, classification, regression,time series?
S
2
Каким то образом можно определить ширину экрана пользователя перед загрузкой partial-а? Надо рассчитать ширину кадров слайдера для ресайза картинок для container-fluid.
Point 111
22
Ты просто гитлеровскую эстетику плохо понимаешь. Он же всё под Цезаря делал. А это как бы запрещённый приём в политике. Пиджаки они зачем все носят? Чтобы показать что они тип...
Ivan Kropotkin
4
Карта сайта