sql >> Databáze >  >> NoSQL >> MongoDB

mongoose Porovnání data bez času a skupiny podle createdAt a staffId s týdenním, měsíčním a ročním celkovým počtem zaměstnanců podle agregace?

Můžete to zkusit,

  • Seskupit podle týdne
db.collection.aggregate([
  {
    $group: {
      _id: {
        year: { $year: "$createdAt" },
        week: { $week: "$createdAt" }
      },
      createdAt: { $first: "$createdAt" },
      count: { $sum: 1 }
    }
  }
])

Hřiště

  • Seskupit podle měsíce
db.collection.aggregate([
  {
    $group: {
      _id: {
        year: { $year: "$createdAt" },
        month: { $month: "$createdAt" }
      },
      createdAt: { $first: "$createdAt" },
      count: { $sum: 1 }
    }
  }
])

Hřiště

  • Seskupit podle roku
db.collection.aggregate([
  {
    $group: {
      _id: { $year: "$createdAt" },
      createdAt: { $first: "$createdAt" },
      count: { $sum: 1 }
    }
  }
])

Hřiště




  1. Mongodb shell mongo:Obvykle je povoleno pouze jedno použití každé adresy soketu (protokol/síťová adresa/port). pro zásuvku:0.0.0.0:27017

  2. C# MongoDB komplexní serializace třídy

  3. NodeJS Mongo - Mongoose - Dynamický název kolekce

  4. jako dotaz v mongoDB