数组
MongoDB支持数组类型,它可以包含任意数量的值,包括其他文档和嵌套数组。下面是一个示例:
代码语言:javascript复制{
"name": "John",
"interests": ["hiking", "reading", "traveling"],
"friends": [
{"name": "Bob", "age": 30},
{"name": "Mary", "age": 25}
]
}
在这个示例中,interests
字段是一个字符串数组,包含John的兴趣爱好。而friends
字段是一个包含两个嵌套文档的数组,表示John的朋友列表。
数据类型转换
MongoDB支持自动数据类型转换。例如,如果您尝试将一个字符串存储在数字字段中,MongoDB将自动将字符串转换为数字。以下是一个示例
代码语言:javascript复制db.users.insertOne({
"name": "John",
"age": "25" // 该字段的值为字符串类型
})
// 执行查询,返回的结果中,age字段的值为数值类型
db.users.find({"name": "John"})
/*
输出结果:
{
"_id": ObjectId("6097e49a3d3a6a6f00d5e674"),
"name": "John",
"age": 25
}
*/
在这个示例中,我们将一个字符串类型的值存储在age
字段中。然而,当我们执行查询时,MongoDB会自动将age
字段的值转换为数值类型,这是因为查询需要使用数值类型进行比较。