sql >> Database >  >> NoSQL >> MongoDB

Retourneer alle velden MongoDB Aggregate

Uit uw beschrijving lijkt het alsof u één document wilt voor elk van de soorten appel in uw verzameling en het document toont met de meest recente datePicked waarde.

Hier is een geaggregeerde zoekopdracht voor:

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" } }
])

Maar op basis van de verzamelde zoekopdracht die je hebt geschreven, lijkt het erop dat je dit probeert te krijgen:

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



  1. MongoDB Ruby Driver 2.5.x Hoofdlettergevoeligheidsproblemen met hostnamen op replicasets

  2. MongoDB-structuur voor berichten-app

  3. ServiceStack Entiteiten Id veldnaam

  4. waarde verlagen in verzameling tot 0