我正在玩一个小型网络应用程序来存储每天花费的任务和时间,并在每周和每月报告中报告。
对于我的后端,我想使用 MongoDb,但无法立即找到存储在任务上花费的时间的最佳方法。 我没有兴趣存储实际的时间范围(开始和停止日期),只是以小时:分钟为单位的时间。
由于我要制作周报和月报,所以我需要能够计算周报和月报的总和。
存储花费时间的最佳方式是什么?
我倾向于只将分钟数存储在 32 位整数中,然后在客户端将其转换为小时:分钟。 (或者更好的是,已经在 Mongodb 聚合查询中转换它,如果可能的话?)
我的任务文件看起来像这样
{
"task_id": {
"$oid": "5311a0a4e4b0386017fce592"
},
"timeEntry_date": "ISODate('2014-03-02')",
"timeSpent_minutes": 30
}
这是 MongoDb 的方式吗?
抱歉,如果我在这里陈述显而易见的话,我才刚刚开始学习 MongoDB...
最佳答案
一如既往地在 MongoDB 上“这取决于您的使用情况”。在 MongoDB 中,您应该构建您的“架构”,以便它描述您的应用程序需求而不是您的数据结构。
如果您的应用程序是写密集型的,您应该有一个非常快速和简单的编写过程。例如,您可以存储花费的毫秒数,然后在读取时进行计算
如果你想让你的应用程序读取速度更快,你可以有类似的东西
time_spent: {
hours: 1,
minutes: 23,
seconds: 45
}
在你的文档中
附言我认为
"task_id": {
"$oid": "5311a0a4e4b0386017fce592"
}
会更好
task_id: "5311a0a4e4b0386017fce592"
关于mongodb - 存储花费时间的最佳方法是什么(小时 : minutes) in MongoDb?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22126249/