MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Agregacja roczna i miesięczna w MongoDB

  • zainicjuj parametry żądania
var year = req.year;
var month = req.month;
  • ustaw domyślny warunek roku
var condition = [{
  $eq: [{ $substr: ["$$this.k", 0, 4] }, String(year)]
}];
  • sprawdź, czy miesiąc jest dostępny, a nie wszystkie, a następnie dodaj warunek
if (month && month != "all") {
  condition.push({
    $eq: [{ $substr: ["$$this.k", 5, 2] }, String(month)] 
  });
}
  • $filter iterować pętlę kodu i filtrować powyżej przygotowanych warunków
db.collection.aggregate([
  {
    $set: {
      code: {
        $filter: {
          input: "$code",
          cond: { $and: condition }
        }
      }
    }
  }
])

Plac zabaw




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Oblicz pochodną pierwszego rzędu za pomocą platformy agregacji MongoDB

  2. Jak uruchomić mongo db w systemie Windows

  3. Zaktualizuj wiele pól w dokumencie MongoDB

  4. Zwróć wynik tylko jako tablica wartości

  5. Mongoose:CastError:Cast to ObjectId nie powiodło się dla wartości „me” w ścieżce „_id”