当前位置: 首页 > 知识库问答 >
问题:

如果提供日期是Mongodb中使用NodeJS的数组的日期,则增加值

姜羽
2023-03-14

如果provide courtId等于slotTracker中的courtId,并且provided date在dates数组中,我想将slotsAvailable减1并将slotsBooked增1


 {

"slotTracker" : [
    {
      "courtID" : 1,
      "dates" : [
        {
          "date": "2021-03-17T08:03:02.197Z",
          "slotsBooked": 0,
          "slotsAvailable": 10
        },
            
        {
          "date": "2021-04-17T08:03:02.197Z",
          "slotsBooked": 0,
          "slotsAvailable": 15
        },      
      ]
    },
    {
      "courtID" : 2,
      "dates" : [
        {
          "date": "2021-03-17T08:03:02.197Z",
          "slotsBooked": 0,
          "slotsAvailable": 15
        },
            
        {
          "date": "2021-04-17T08:03:02.197Z",
          "slotsBooked": 0,   //increase this by 1
          "slotsAvailable": 5   //decrease this by 1
        },      
      ]
    }
  ]

}

例如:提供courtId为1,提供日期为“2021-03-17T08:03:02.197Z”。所以它会改变slotAvailable couter

{
    "courtID" : 2,
     "dates":[{
          "date": "2021-04-17T08:03:02.197Z",
          "slotsBooked": 1,   //increase this by 1
          "slotsAvailable": 4   //decrease this by 1
      },
     {
          "date": "2021-03-17T08:03:02.197Z",
          "slotsBooked": 0,
          "slotsAvailable": 15
      },
      ]
}

共有1个答案

仲法
2023-03-14
db.sample.update({
    courtID: 2, 
    "dates.date" : "2021-04-17T08:03:02.197Z" 
   } , 
   {$inc : {
         "dates.$.slotsBooked" : 1, "dates.$.slotsAvailable" : -1} 
    });

请试用:)

 类似资料:
  • 我使用html5日期选择器,如[输入类型="日期"], 我只需要增加当前日期1.我的意思是只显示明天的日期和未来的日期,当前日期和以前的日期想要去禁用状态只显示未来的日期... 任何人请帮帮我。。 这是我的试用代码。 小提琴:代码在这里...

  • 问题内容: 我想将天数添加到当前日期:我正在使用以下代码: 但是我没有得到适当的日期,而是得到了: 2592000 请提出建议。 问题答案: 这应该是 期望得到一个包含美国英语日期格式的字符串,并将尝试将该格式解析为相对于现在给出的时间戳的Unix时间戳(自1970年1月1日00:00:00UTC以来的秒数)。当前时间(如果未提供)。 而 返回一个字符串,该字符串根据给定的格式字符串使用给定的整数

  • 问题内容: 我需要在JavaScript中将日期值增加一天。 例如,我的日期值为2019-09-11,我需要将第二天的日期存储在JavaScript变量中。 如何将日期增加一天? 问题答案: 为您提供三种选择: 1.仅使用JavaScript的对象(不使用库): 我以前对#1的回答是错误的(它增加了24小时,未能考虑到夏时制的过渡;CleverHuman指出,东部时区到2010年11月7日将失败)

  • 编辑:为了确保时区对象可用: sun.util.calendar.zoneinfo[id=“欧洲/柏林”,offset=3600000,dstsavings=3600000,usedaylight=true,transitions=143,lastrule=java.util.simpletimezone[id=欧洲/柏林,offset=3600000,dstsavings=3600000,use

  • 问题内容: 我正在寻找将给定日期增加工作日数的功能。 假期表 包含假期。另外,星期六和星期日均为非营业日。 我试图创建功能 但是它有时返回不正确的结果: 返回2018-12-10, 但正确的结果是2018-12-11 如何在Postgres 9.1+中创建这样的功能? 问题答案: 关键是生成一系列工作日,并用以下编号对它们进行编号: 测试查询的结果似乎正确: 或者,您可以在循环中找到日期:

  • 问题内容: 我的将日期添加一天的代码返回添加日期之前的日期: 添加一天之后的日期应滚动到下个月: 我以前使用过非常相似的代码,我在这里做错了什么? 问题答案: 对于PHP 5.2.0+,您还可以执行以下操作: