Как получить результат агрегатной функции Мангуста

Я не уверен в вашей структуре таблицы, но если ваша таблица примеров верна, вы можете попробовать следующее:

SELECT
  A.TICKET_NUMBER, 
  Max(A.CREATED_BY),
  Max(A.DATE_CREATED)
From 
  Yourtable A
Group by
  A.TICKET_NUMBER
0
задан James Z 20 January 2019 в 07:59
поделиться

1 ответ

ну, так что после исследования этого. я видел результат, который вы получаете здесь: AggregationCursor .

мы можем легко получить документы отсюда, используя .toArray() , как вы хотите. или, может быть, вы можете использовать курсор для перебора, если есть много документов. и вы можете делать много вещей, используя курсор. проверьте документы для cursor .

в вашем случае вы можете просто добавить .toArray() :

const sumByNetType= await mongoose.connection.db.collection(f)
.aggregate([{$match:{"network_type":n}},{$group: 
{_id:"$network_type",'total': { '$sum': { '$toInt': '$cost' } }}}]).toArray();

, если вы хотите переберите все документы этого запроса, вы можете сделать что-то вроде этого:

const cursor= await mongoose.connection.db.collection(f)
.aggregate([{$match:{"network_type":n}},{$group: 
{_id:"$network_type",'total': { '$sum': { '$toInt': '$cost' } }}}]);

//this will just iterate over the results
 cursor.each(function(err, docs) {
       console.log(docs)
  // do something using the doc,
        if(docs == null) {
            mongoose.connection.db.close(); //close the connection
      }
  });
0
ответ дан saikat chakrabortty 20 January 2019 в 07:59
поделиться
Другие вопросы по тегам:

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