sql >> Database teknologi >  >> NoSQL >> MongoDB

Returner alle felter MongoDB Aggregate

Ud fra din beskrivelse lyder det, som om du vil have ét dokument for hver af æbletyperne i din samling og vise dokumentet med den seneste datePicked værdi.

Her er en samlet forespørgsel for det:

db.collection.aggregate([
  { $sort: { "datePicked": -1 },
  { $group: { _id: "$appletype", color: { $first: "$color" }, datePicked: { $first: "$datePicked" }, dateRipe: { $first: "$dateRipe" }, numPicked: { $first: "$numPicked" } } },
  { $project: { _id: 0, color: 1, datePicked: 1, dateRipe: 1, numPicked: 1, appletype: "$_id" } }
])

Men baseret på den samlede forespørgsel, du har skrevet, ser det ud til, at du prøver at få dette:

db.collection.find({appletype: "Granny"}).sort({datePicked: -1}).limit(1);



  1. MongoDB samler pipelines med linket objekt

  2. Hvordan bruger man aggregering til MongoDB til at filtrere baseret på $and/$or?

  3. Heroku-appen går ned efter MongoDB opdateret til 3.0

  4. python-rq worker lukker automatisk