概念 NOSQL not only SQL 文档型数据库,按列存储,分布式架构,批量写入性能好
教程学习札记
db.getCollection("111").find({"name":"Jane"})
关联关系设计
Example1 引用关系
{
"_id":ObjectId("52ffc33cd85242f436000001"),
"contact": "987654321",
"dob": "01-01-1991",
"name": "Tom Benzamin",
"address_ids": [
ObjectId("52ffc4a5d85242602e000000"),
ObjectId("52ffc4a5d85242602e000001")
]
}
{
"_id" : ObjectId("52ffc4a5d85242602e000000"),
"building" : "170 A, Acropolis Apt",
"pincode" : 456789,
"city" : "Chicago",
"state" : "Illinois"
}
{
"_id" : ObjectId("52ffc4a5d85242602e000001"),
"building" : "170 A, Acropolis Apt",
"pincode" : 456789,
"city" : "Chicago",
"state" : "Illinois"
}
查询方法
var result= db.user.findOne({"name":"Tom Benzamin"},{"address_ids":1})
db.address.find({"_id":{"$in":result["address_ids"]}})
Example 2 嵌入式引用
{
"_id":ObjectId("52ffc33cd85242f436000001"),
"contact": "987654321",
"dob": "01-01-1991",
"name": "Tom Benzamin",
"address": [
{
"building": "22 A, Indiana Apt",
"pincode": 123456,
"city": "Los Angeles",
"state": "California"
},
{
"building": "170 A, Acropolis Apt",
"pincode": 456789,
"city": "Chicago",
"state": "Illinois"
}]
}
>db.users.findOne({"name":"Tom Benzamin"},{"address":1})