MongoDB_基本操作

一、基本命令

1、数据库

登录

mongo

查看数据库

show dbs;
或
show databases;

进入某个数据库

use +数据库名

查看当前所在的数据库

db

删除数据库

db.dropDatabase();

2、集合

查看数据库中的所有集合

show collections;

删除集合

db.集合名.drop();

3、文档——数据库的CRUD操作

①向数据库中插入文档

db.集合名.insert(内容);
db.集合名.insertOne({});
db.集合名.insertMany([{},{},{}。。。。]);
后两个只是第一个变种

其中db代表当前的数据库

插入多个文档:

db.stu.insert([
	{name:'阿西吧',age:12,gender:'男'},
	{name:'猪猪侠',age:20,gender:'男'},
	{name:'白骨精',age:1200,gender:'女'}
]);

例子

当我们向集合中插入文档时,如果没有给文档指定_id属性,则数据库会自动为文档添加。该属性用来作为文档的唯一标识,是根据时间戳和机器码生成的,不会重复。也可以自己指定,但是也必须确保唯一性。

②查询当前集合中的所有符合条件的文档

db.集合名.find();#返回的是一个数组
db.集合名.findOne();#返回的是一个文档对象

 find中可以接收一个对象作为条件。如:find({_id:"hello"});

db.stu.find({name:"小西米"});
db.stu.findOne({age:18}).name;#使用文档对象可以获得其他属性
db.stu.find({}).count();#查询个数

MongoDB支持直接通过内嵌文档的属性查询,如果要查询内嵌文档则可以通过 · (点) 的形式来匹配。

如果要通过内嵌文档进行查询,此时属性名必须使用引号

{ 
    "_id" : ObjectId("5b4d9392fa8ced9a18ad947b"), 
    "name" : "sunwukong", 
    "hobby" : {
        "cities" : [
            "beijing", 
            "shanghai", 
            "shenzhen"
        ], 
        "movies" : [
            "sanguo", 
            "hero"
        ]
    }
}

查询:

db.user.find({'hobby.movies':"hero"});

③修改文档

db.集合名.update(查询条件,新对象,选项设置);
db.集合名.updateOne(查询条件,新对象);#修改一个符合条件的文档
db.集合名.updateMany(查询条件,新对象);#修改多个符合条件的文档
db.集合名.replaceOne(查询条件,新对象);#专门用来替换的
后三个只是前一个功能细分,实际上可以用第一个代替

默认情况下update会使用新对象替换旧对象。如果需要修改指定的属性而不是替换需要使用 “操作符” 来完成修改

实例

db.stu.update({name:"小西米"},{age:28});#替换

$set:可以用来修改文档中的指定属性。同理 $unset:可以用来删除指定属性

db.stu.update(
  {age:28},
  {$set:{
	name:"小西米",gender:"女"
  }}
);

修改多个

db.stu.update(
  {age:28},
  {$set:{
	name:"小西米",gender:"女"
  }},
  multi:true
);

④删除

db.集合名.remove();
db.集合名.deleteOne();
db.集合名.deleteMany();

删除符合条件的一个或所有文档,默认删除所有。

实例

db.stu.remove({name:"小西米"});#删除所有符合条件的

db.stu.remove({name:"小西米"},true);#删除第一个符合条件的

db.集合名.remove({});#删除所有,必须传入

猜你喜欢

转载自blog.csdn.net/qq_30604989/article/details/81077498