目录:
一. MongoDB 增加
1、插入数据
- 插入文档: insert 如果插入数据的时候,collection还不存在,自动创建集合
- insertOne: 插入一条数据
- insertMany: 接收数组,插入多条文档
#1、插入单条数据
db.student1.insertOne({
_id:"stu001","name":"Tom","age":25,grade:{
"chinese":80,"math":90,"english":88}})
#2、插入多条数据
db.student1.insertMany([
{
_id:"stu002","name":"Mary","age":23,grade:{
"chinese":80,"math":90}},
{
_id:"stu003","name":"Mike","age":23,grade:{
"chinese":81,"math":90,"english":88}}
]);
2、更新文档: updateOne和updateMany
#1、更新_id=7839的薪水 ---> 8000
db.emp.updateOne({
"_id":7839},{
$set:{
"sal":8000}})
db.emp.find({
"_id":7839}) # 查询id=7893的文档
#2、更新多条数据:更新10号部门的员工薪水,加100块钱
错误:db.emp.updateMany({
"deptno":{
$eq:10}},{
$set:{
"sal":"sal"+100}}) ---> 不对
正确:db.emp.updateMany({
"deptno":{
$eq:10}},{
$inc:{
"sal",100}})
3、删除文档: deleteOne和deleteMany
- db.emp.deleteOne({"_id":7839})
4、批处理
注: 为了提高效率,db.collection.bulkWrite,支持:insert update remove 同时也支持insertMany
db.mystudents.bulkWrite([
{
insertOne:{
"document":{
"_id":100,"name":"Tom","age":25}}},
{
insertOne:{
"document":{
"_id":101,"name":"Mary","age":24}}},
{
updateOne:{
"filter":{
"_id":100},"update":{
$set:{
"name":"Tom123"}}}}
]);
二. MongoDB查询操作
1、基本查询
创建emp表并插入14条数据:
db.emp.insert(
[
{
_id:7369,ename:'SMITH' ,job:'CLERK' ,mgr:7902,hiredate:'17-12-80',sal:800,comm:0,deptno:20},
{
_id:7499,ename:'ALLEN' ,job:'SALESMAN' ,mgr:7698,hiredate:'20-02-81',sal:1600,comm:300 ,deptno:30},
{
_id:7521,ename:'WARD' ,job:'SALESMAN' ,mgr:7698