一、
1.将dept和emp集合导入数据库中
cmd下导入dept和emp
mongoimport -d test -c emp d:\emp.json -legacy
2.查询工资小于2000的员工
db.emp.find({sal:$lt:2000})
3.查询工资在1000-2000之间的员工
db.emp.find({sal:{$lt:2000,$gt:1000}})
4.查询工资小于1000或大于2500的员工
db.emp.find({$or:[{sal:{$lt:1000}},{sal:{$gt:2500}}]})
5.查询财务部的所有员工
db.emp.find({depno:db.dept.find({dname:"财务部"})[0].deptno})
6.查询销售部的所有员工
db.emp.find({depno:db.dept.find({dname:"销售部"})[0].deptno})
7.查询所有mgr为7698的所有员工
db.emp.find({mgr:7698})
8.为所有薪资低于1000的员工增加工资400元
db.emp.updateMany({sal:{$lt:1000}},{$inc:{sal:400}})
二、
1.将s.json文件中的数据导入到数据库的集合s中
mongoimport -d test -c s c:\s.json
2.查询第2到第5个文档
db.s.find().skip(1).limit(4)
3.男生按年龄的降序排序
db.s.find({ssex:"nan"},{sage:1,_id:0}).sort({sage:-1})
4.统计18岁(含)以下的学生人数
db.s.find({sage:{$lte:18}}).count()
5.显示女生的姓名和年龄
db.s.find({ssex:"nv"},{sname:1,sage:1,_id:0})
6.给学号按升序创建一个唯一索引
db.s.createIndex({sno:1},{unique:true})
7.查询姓名包含字母i的学生
db.s.find({sanem:/i/})
8.按年龄统计人数
db.s.aggregate
db.s.aggregate([
{
$group:
{
_id:"sage",
count:{$sum:1}
}
}
])
9.统计男生的平均年龄
db.s.aggregate([
{$match:{ssex:"nan"}},
{
$group:
{
_id:"$ssex",
avgage:{$avg:"$sage"}
}
}
])
10.按性别统计人数,显示人数在2人以上的
db.s.aggregate([
{
$group:
{
_id:"ssex",
count:{$sum:1}
}
},
{$match:{count:{$gte:2}}}
])