MongoDB指令

170 阅读2分钟

MongoDB的常用指令

mongodb安装 :

- https://www.mongodb.com/ 官网下载 
- 检测环境变量是否设置好了,要将mongodb的环境变量配置为系统变量
    - 打开我的电脑 - 属性 - 高级系统设置 - 环境变量 - 系统变量 - path
    - 如何找到mongoDB的安装路径:默认安装为`C:\Program Files\MongoDB\Server\5.0\bin`
- 查看是否 安装好 : `mongod --version`;

图.PNG

启动mongodb :

  • 输入指令 : mongod --dbpath=存放数据库文件的目录
  • 启动mongodb成功,可以通过默认端口号 查看 ;
    • http://127.0.0.1:27017
  • 可以通过 可视化工具连接数据库(Navicat) ;

数据库操作

  • 进入 mongodb的环境 : 输入 指令 : mongo
  • 查看所有的数据库 : show dbs
  • 选中某个数据库 : use 数据库名称
  • 查看当前所在的数据库 : db
  • 查看数据库下的集合 : show collections;

创建数据库

  • 使用一个 新的数据库名称 : use 新数据库名称;
  • 需要在这个数据库里添加一条数据 ,那么这个被use的数据库就会保存下来
    • db.集合名称.insert({name:"姓名",age:24});

删除数据库

  • step1:使用数据库 : use mydbs进入当前要删除的数据库
  • step2:db.dropDatabase();

集合操作 : collection

  • 显示集合 : show collections;
    • 在使用显示集合指令之前要先进入包含当前集合的数据库,指令:use 数据库名 ;
  • 创建集合 :
    • 添加数据 可以自动创建集合 : db.集合名称.insert({"一条数据"});
    • 创建一个空集合 : db.createCollection("集合名称");
  • 删除集合 :
    • db.集合名称.drop()

文档操作 : document

  • 增加操作
    • 直接添加对象 db.集合名称.insert({name:"姓名",age:20});
    • 添加对象数组
    db.集合名称.insert([{username:"李四",age:22},{username:"李四2",age:23}])
  • 删除操作
    db.集合名.remove({条件});
    db.集合名.remove({username:"李四1"})
  • 修改操作 : 默认只能修改满足条件的一条数据 ;
    db.集合名称.update({条件},{$set:{username:"修改了"}});
  • 查看数据
    • db.集合名称.find();
    • db.集合名称.find().pretty(); // 格式化显示数据

mongodb查询

基本查询

  • db.集合名称.find({条件},{选取的字段}).pretty();pretty(设置的是数据的显示格式) - db.users.find({username:"王小二"},{username:1,age:1,_id:0});

条件查询

  • 大于小于等于的关系 :
  1. 等于条件 : db.集合名.find({字段:值});
  2. 大于 : gt : db.集合名.find({age:{gt:20}});
  3. 小于 : $lt :
  4. 不等于 : $ne
  5. 大于等于 : $gte :
  6. 小于等于 $lte :
  • 且和或的关系
    • 且关系 :直接通过 逗号隔开
      • 年龄大于20 且 小于 25;db.集合名称.find({age:{$gt:20,$lt:25}});
    • 或者关系 : $or 连接
      • 年龄小于21 或者 姓名是 名字是 “李四2”的数据
        • db.集合名.find({$or:[{age:$lt:21},{username:"李四2"}]});
  • 注意:默认根据条件只能更新一条数据
    • 年龄大于21岁的人 姓名修改了;
    • 需要修改多条 配置第三个参数 : {multi:true}
      • db.users.update({age:{gt:21}},{set:{username:"修改了111"}},{multi:true});
  • 模糊查询 :mongodb可以接收 正则查询 ;
    • db.users.find({username:/^字符.+/});
  • 限制查询 : 限制 查询的条数 : db.users.find().limit(信息条数);
  • 跳过查询 : 跳过几条数据再查询数据 : db.users.find().skip(信息条数);
  • 排序查询 : 根据字段做排序 : db.users.find().sort({age:参数});
    • age: 1 : 正序排列
    • age:-1 是倒序排列
    • 注意 : 排序的字段类型应该是数字,如果不是数字的话会按照编码格式的数字大小进行排序,会出现一些奇奇怪怪的顺序;