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

Jak znaleźć różnicę godzin między dwiema datami w mongodb

Możesz użyć poniższej agregacji

db.collection.aggregate([
  { "$project": {
    "difference": {
      "$divide": [
        { "$subtract": ["$logoutTime", "$loginTime"] },
        60 * 1000 * 60
      ]
    }
  }},
  { "$group": {
    "_id": "$studentID",
    "totalDifference": { "$sum": "$difference" }
  }},
  { "$match": { "totalDifference": { "$gte": 20 }}}
])

Musisz tylko $subtract loginTime z logoutTime i da ci odjęty znacznik czasu, a następnie po prostu $divide to z 3600000 aby uzyskać czas w godzinach.

MongoPlayground




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Błąd przekroczenia limitu czasu podczas łączenia się z CosmosDB za pomocą interfejsu API MongoDB

  2. Sterownik php MongoDB powodujący awarię Apache w XAMPP OS X

  3. Pobierz i dodaj/aktualizuj wielopoziomowy osadzony/zagnieżdżony dokument MongoDB za pomocą C#

  4. Modelowanie wiele do wielu :za pomocą Mongoid/MongoDB

  5. MongoDB .NET nie generuje _id na upsert