sql >> Databáze >  >> NoSQL >> MongoDB

Jak najít hodinový rozdíl mezi dvěma daty v mongodb

Můžete použít níže uvedenou agregaci

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

Stačí $subtract loginTime z logoutTime a dá vám odečtené časové razítko a pak už jen $divide to s 3600000 získat čas v hodinách.

MongoPlayground




  1. Chyba ověření Mongodb

  2. MongoDB – A co desetinný typ hodnoty?

  3. Odebrat podle _id v konzole MongoDB

  4. Bitva o databáze NoSQL - srovnání MongoDB a Cassandra