mongodb中如何基于2个字段计算时差
我熟悉简单的mongodb查询,但这个查询对我来说有点复杂。这里,我试图实现的是基于mongodb中如何基于2个字段计算时差,mongodb,Mongodb,我熟悉简单的mongodb查询,但这个查询对我来说有点复杂。这里,我试图实现的是基于jsonObject.callID和jsonObject.mobile字段,我必须计算jsonObject.timestamp的时差。例如,在下面的示例文档中,jsonObject.callID和mobile对于jsonObject.actionstart和end将保持不变。因此,基于jsonObject.callID和jsonObject.mobile,我必须减去jsonObject.timestampjson
jsonObject.callID
和jsonObject.mobile
字段,我必须计算jsonObject.timestamp
的时差。例如,在下面的示例文档中,jsonObject.callID
和mobile
对于jsonObject.action
start
和end
将保持不变。因此,基于jsonObject.callID
和jsonObject.mobile
,我必须减去jsonObject.timestamp
jsonObject.callId对于两个间隔动作(即start
和end
具有相同的jsonObject.mobile
编号)是相同的
{
"_id" : ObjectId("5df9bc5ee5e7251030535df5"),
"_class" : "com.abc.mongo.docs.IvrMongoLog",
"jsonObject" : {
"mode" : "ivr",
"callID" : "33333",
"callee" : "128",
"action" : "end",
"mobile" : "218924535466",
"timestamp" : "2019-12-18 16:18:12"
}
}
{
"_id" : ObjectId("5df9bc3de5e7251030535df4"),
"_class" : "com.abc.mongo.docs.IvrMongoLog",
"jsonObject" : {
"mode" : "ivr",
"callID" : "33333",
"callee" : "128",
"action" : "start",
"mobile" : "218924535466",
"timestamp" : "2019-12-18 16:12:11"
}
}
因此,我尝试实现如下输出:
{
"callee" : "128",
"mobile" : "218924535466",
"callID" : "33333",
"minutes_of_call" : "6" // difference of "2019-12-18 16:18:12" - "2019-12-18 16:12:11"
}
随后,我需要为下一个文档提供这些结果
请协助。请将时间戳保存为mongodb格式,如2014-01-01T08:15:39.736Z,然后我们可以做itok..我会做。。下一步?好的,请给我5分钟。请在jsoneditor online与mongodb的时间格式共享实际数据使用并在线保存,与我共享链接