当前位置: 首页 > 面试题库 >

在MongoDB中使用变量作为文件名时,可以在嵌入式文档上使用'$ set'吗?

杜哲彦
2023-03-14
问题内容

我想使用“ $ set”更新嵌入式文档,但是该字段是变量。

说我有一个像这样的文件:

{'_id': ObjectID,
 'people': {
     'A': {'age': 20}
 }
}

现在,我要向添加一个新人people。我可以使用$set: {'people.B':{'age': 25},但是如果名称(而不是B)是变量怎么办?

我正在使用Node.js 5.1和’mongodb’驱动程序。


问题答案:

您需要使用[]运算符动态构建查询。

var b = 'B';
var update = {};
update['people.' + b] = { 'age': 25 };
db.collection.update({}, { '$set': update })


 类似资料:
  • 问题内容: 我知道这不是应该做的事情,但是有没有办法使用斜线字符来分隔Linux中文件名中的目录? 问题答案: 答案是,除非文件系统有错误,否则您将无法这样做。原因如下: 有一个系统调用,用于重命名名为的文件: 当系统调用被调用时,它将对名称进行路径查找()。继续跟踪,我们可以看到: 此代码适用于任何文件系统。什么意思 这意味着,如果您尝试使用传统方式将带有实际字符的参数作为文件名传递,它将无法执

  • 我试图导入一个对象到蒙戈。但是当我试图使用对象的值作为_id它失败了。错误,即:[CastError: Cast to ObjectID在路径_id]的值为11563195失败,以及稍后的[错误:文档在保存之前必须有_id] 我做错了什么? 以下是使用的模式: 非常感谢您的时间和帮助。

  • 本文向大家介绍在更新MongoDB文档时如何使用自定义变量,包括了在更新MongoDB文档时如何使用自定义变量的使用技巧和注意事项,需要的朋友参考一下 要更新,请使用update(),以下是创建和使用示例自定义变量的语法- 让我们创建一个包含文档的集合- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是在更新MongoDB文档时使用自定义变量的查询- 在find()方法

  • 问题内容: 我将包含诸如 PéréquationLES HOPITAUX NEUFS.xls之 类的特殊字符 压缩 到另一个文件夹中,例如 temp 。 我可以压缩文件,但是问题是文件名自动更改为 P +¬r+¬报价LES HOPITAUX NEUFS.xls 。 如何在zip归档文件中支持Unicode字符作为文件名? 问题答案: 这一点取决于您用于创建存档的代码。在 旧 的Java压缩类不是很

  • 问题内容: 我有一个处理发送确认电子邮件的PHP文件。我还有一个日历,可以使用AJAX进行各种更新。当AJAX调用更新文件时,它将使用新信息更新数据库,并且我希望发送确认电子邮件。 因此,从AJAX调用的php文件内部,我认为应该调用哪个电子邮件php页面,并带有$ _GET变量来告诉它发送哪些电子邮件以及向谁发送电子邮件。 但是由于某些原因,当您使用附加到字符串的$ _GET对时,我无法使包含起