Монго запросить коллекцию журналов с C # Api - PullRequest
0 голосов
/ 18 февраля 2019

Для контекста:

Пакетный файл имеет BachItems. Каждый BatchItem является строкой и имеет номер строки.Каждая строка обрабатывается по порядку.

Я новичок в NoSQL и mongo, и мне хотелось бы узнать, как запросить последний выполненный шаг обработки (последний столбец EventType) для каждого BatchItem (номер строки),фильтрация по BatchId?Например, он должен вернуть следующий результат для BatchId "102030":

enter image description here

Я считаю, что могу добиться этого, используя функции Aggregate и Group, но нене знаю как.Спасибо.

1 Ответ

0 голосов
/ 18 февраля 2019

Вы можете сделать это, как показано ниже:

db.batch.aggregate([
    {
        $match: {
             "BatchId": 102030
        }
    }, 
    { $sort: { "Date": -1 } },
    {
        $group: {
            _id: "$BatchItemId",
            "doc": { "$push": { lastEventName: "$EventType" } },
        }
    },
    { 
        $replaceRoot: {
        newRoot: { $arrayElemAt: ["$doc", 0] }
    }}

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