栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

查找用户在mongoDB中花费的总时间

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

查找用户在mongoDB中花费的总时间

您可以

timeOfDay
TimeOfVisit
字段中找到,然后使用
$sum


来获取总数

db.collection.aggregate([  { "$match": { "User": req.query.User }},  { "$addFields": {    "timeOfDay": {      "$mod": [        { "$toLong": "$TimeOfVisit" },        1000*60*60*24      ]    }  }},  { "$group": {    "_id": "$location",    "totalTimeInMilliseconds": { "$sum": "$timeOfDay" }  }}])

Output

[  {    "_id": "Reception",    "totalTimeInMilliseconds": 33165688  },  {    "_id": "Cafeteria",    "totalTimeInMilliseconds": 98846064  }]

您可以将其进一步划分以获取天,小时,分钟或秒

1 hour = 60 minutes = 60 × 60 seconds = 3600 seconds = 3600 × 1000milliseconds = 3,600,000 ms.

db.collection.aggregate([  { "$addFields": {    "timeOfDay": {      "$mod": [        { "$subtract": [ "$TimeOfVisit", Date(0) ] },        1000 * 60 * 60 * 24      ]    }  }},  { "$group": {    "_id": "$location",    "totalTimeInMiniutes": {      "$sum": { "$divide": ["$timeOfDay", 60 × 1000] }    }  }}])

对于mongodb 4.0 及更高版本

db.collection.aggregate([  { "$addFields": {    "timeOfDay": {      "$mod": [        { "$toLong": "$TimeOfVisit" },        1000 * 60 * 60 * 24      ]    }  }},  { "$group": {    "_id": "$location",    "totalTimeInMiniutes": {      "$sum": { "$divide": ["$timeOfDay", 60 × 1000] }    }  }}])


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/413275.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号