Монго агрегат с агрегатом dayOfMonth не работает в оболочке Монго, но работает в инструменте GUI - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть запрос, у которого в агрегате есть dayOfMonth, и он отлично работает в «NoSQLBooster для MongoDB», но когда я пытаюсь запустить его в оболочке Mongo, я получаю

E QUERY SyntaxError: Unexpected identifier

Когда я вынимаю строку dayOfMonth, она работает в оболочке Mongo

Вот запрос:

    db.logs.aggregate([ 
  { $match:{"User.Account":"hmm@hmm.com" }},
    { $group : {
        _id: {
            year : {      $year : "$DateTime" },        
            month : { $month : "$DateTime" }
            day:{$dayOfMonth: "$DateTime"},
            "Action.Name" :   "$Action.Name"
        },
        count: { $sum: 1 }
    }}

  ])

Любые подсказки относительно того, почему он будет вести себя по-разному?

Iклянусь, я сделал прямую вырезку и вставку ... но явно нет ... я пропустил запятую через месяц ... Вот хороший запрос.

 db.logs.aggregate([ 
  { $match:{"User.Account":"hmm@hmm.com" }},
    { $group : {
        _id: {
            year : {      $year : "$DateTime" },        
            month : { $month : "$DateTime" },
            day:{$dayOfMonth: "$DateTime"},
            "Action.Name" :   "$Action.Name"
        },
        count: { $sum: 1 }
    }}

  ])
...