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

dodaj warunek do wyników najnowszych wartości

Gdy operacja obejmuje wyłączenie pełnych dokumentów, pomyśl o $group . Dodanie tego do potoku powinno skierować Cię we właściwym kierunku.

(plac zabaw)

db.collection.aggregate([
  {
    "$group": {
      _id: "cars",
      "cars": {
        "$push": {
          "$cond": [
            {
              "$ne": [
                {
                  "$arrayElemAt": [
                    "$mostRecentValues",
                    0
                  ]
                },
                {
                  "$arrayElemAt": [
                    "$mostRecentValues",
                    1
                  ]
                }
              ]
            },
            "$$ROOT",
            "$$REMOVE"
          ]
        }
      }
    }
  },
  {
    $unwind: "$cars"
  }
])

Jeśli masz tylko 3 pola w każdym dokumencie, który możesz dodać:

  {
    $project: {
      car_id: "$cars.car_id",
      mostRecentTime: "$cars.mostRecentTime",
      mostRecentValues: "$cars.MostRecentValues"
    }
  }



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Schemat godzin otwarcia MongoDB

  2. Serializacja MongoDB find() powraca do nieanonimowej tablicy JSON przy użyciu PyMongo

  3. Jak mogę usunąć duplikaty w MongoDb?

  4. Nie można uruchomić usługi MongoDB 3.0.2 na CentOS 7

  5. Wykonanie Map Reduce nie powiodło się w pymongo, ale powiodło się w powłoce mongo