如何计算MongoDB的平均响应时间(不包括周末、节假日、非工作时间)

如何计算MongoDB的平均响应时间(不包括周末、节假日、非工作时间),mongodb,response-time,Mongodb,Response Time,我试图计算平均响应时间(,不包括周末:周六、周日以及节假日和非工作时间的特定日期(上午10:00到下午6:00)),但不知道如何计算,下面是文档架构: { “_id”:ObjectId(“5dc91170b15e1f7ae332b9fe”), “行动”:{ “已创建”:ISODate(“2019-11-07T07:44:48.799Z”), “接受”:ISODate(“2019-11-12T07:44:48.799Z”) } }, { “_id”:ObjectId(“5dc929bffc6386

我试图计算平均响应时间(
,不包括周末:周六、周日以及节假日和非工作时间的特定日期(上午10:00到下午6:00)
),但不知道如何计算,下面是文档架构:

{
“_id”:ObjectId(“5dc91170b15e1f7ae332b9fe”),
“行动”:{
“已创建”:ISODate(“2019-11-07T07:44:48.799Z”),
“接受”:ISODate(“2019-11-12T07:44:48.799Z”)
}
},
{
“_id”:ObjectId(“5dc929bffc638655004a691e”),
“行动”:{
“已创建”:ISODate(“2019-11-06T09:28:31.039Z”),
“接受”:ISODate(“2019-11-12T04:48:09.054Z”)
}
},
{
“_id”:ObjectId(“5dca3b2a6e78f16598ae462b”),
“行动”:{
“创建”:ISODate(“2019-11-12T04:55:06.520Z”),
“接受”:ISODate(“2019-11-12T04:55:06.520Z”)
}
},
{
“_id”:ObjectId(“5DCA3BC4DD8D4FE1B0B15E”),
“行动”:{
“已创建”:ISODate(“2019-11-12T04:57:40.396Z”),
“接受”:ISODate(“2019-11-12T04:57:40.396Z”)
}
}
我使用的查询不排除非工作日和工作时间:

db.claims.aggregate([
{
$group:{
_id:null,
总时间计数:{
$sum:{
$cond:[
{$ifNull:['$actions.accepted',0]},
1.
0
]
}
},
总时间:{
$sum:{
$cond:[
{$ifNull:['$actions.accepted',0]},
{$subtract:['$actions.accepted','$actions.created']},
0
]
}
}
}
},
{
$项目:{
平均响应时间:{
$cond:[
{$gt:['$total\u time\u count',0]},
{$divide:['$total_time','$total_time_count']},
0
]
}
}
}
]);
如果有人在类似的场景中工作过,请在回答中发布


非常感谢您的帮助。

对不起,伙计,我没有时间为您解决这个问题。看看这个api

Hey@Ihsan Müjdeci,谢谢你的回答,我知道星期几,但我不知道如何为日期创建范围这不是这个问题的答案。