Как получить результат $ match в одном документе, а не в массиве? - PullRequest
0 голосов
/ 29 июня 2018

У меня есть тематическая коллекция примерно так

 {
    "_id": "1",
    "topic_name": "Animation",
},
 {
    "_id": "2",
    "topic_name": "Animation"
}

и когда я использую

    db.topic.aggregate([
  {
    $match: { _id: 1 }
  }

Я получаю результат в массиве

[
{
    "_id": "1",
    "topic_name": "Animation"
}
]

Мой вопрос: возможно ли получить результат в одном документе, а не в массиве с $ match? Я не хочу использовать метод findOne, потому что мне все еще нужно создать еще один конвейер с агрегатом. Мой ожидаемый результат будет

{
    "_id": "1",
    "topic_name": "Animation"
}

Спасибо всем за помощь!

1 Ответ

0 голосов
/ 01 июля 2018

Нет, получить результат в одном документе невозможно, потому что $match всегда выдаст список документов.

вы можете использовать find вместо aggregate, тогда вы получите один документ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...