文档间的关系
/*
一对一
一对多
多对多
*/
db.wifeAndHusband.insert({
{
name:"黄蓉",
husband:{
name:"郭靖"
}
}
})
db.wifeAndHusband.find()
db.users.insert([{
username:"swk",
_id:001
},{
username:"zbj",
_id:002
}
])
db.order.insert({
list:["苹果","香蕉","西瓜"],
_id:001
})
db.users.find()
var user_id=db.users.findOne({username:"swk"}._id)
db.order.find({user_id:user_id })
//多对多
db.teachers.insert(
[
{name:"洪七公",_id:001},
{name:"黄药师",_id:002},
{name:"龟仙人",_id:003}
]
)
db.stus.insert([
{name:"郭靖",
tech_ids:[
_id("001"),
_id("002")
]
},
{name:"swk",
tech_ids:[
_id("003"),
_id("002")
]
}
])
//查询工资1000-2000的员工
db.emp.find(sal:{$lt:2000,$gt:1000})
//查询工资小于1000或大于2500的员工
db.emp.find($or:[{sal:{$lt:1000},{sal:{$gt:2500}}}])
//查询财务部的所有员工
var depno = db.dept.findOne({dname:"财务部"}).deptno
db.emp.find({depno:depno})
//查询所有销售部的员工
var depno = db.dept。findOne({dname:"销售部"}).deptno
db.emp.find(depno:depno)
//查询所有mgr为7698的所有员工
db.emp.find({mgr:7698})
//为所有低于1000工资的员工增加400元
db.emp.updateMany({sal:{$lte:1000}},{$inc:{sal:400}})
//指定文档的一个排序,传递一个参数来指定排序规则
db.emp.find({}).sort({sal:1,empno:-1})
//-1的话表示降序,先看前面的,再排后面的
//查找的时候仅仅显示某个,1表示显示,0表示隐藏
db.emp.find({},{ename:1,_id:0,sal:1})