转自:https://blog.csdn.net/qq_25479327/article/details/81145850

一、MongoDB基本语法和操作入门

数据库操作

show dbs; // 查看有哪些数据库
db; // 查看当前所在数据库,默认test
use 数据库; // 切换到某一数据库,没有的话则创建
db.createCollection() // 新建集合
show collections; // 查看当前数据库下有哪些集合
db.dropDatabase() // 删除当前数据库
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

CURD 操作

插入

格式:db.集合名.insert();

db.collection1.insert({"name": "李二狗","age": 20});
  • 1

1.collection1没有的话会自动创建
2._id,是mongodb自已生成的,每行数据都会存在,默认是ObjectId
格式:db.集合名.save();

db.collection1.save({"_id": 1111, "name": "李大狗", "age": 30, "sex": "male"});
  • 1

_id可以自已插入

save()方法与insert()方法区别


用save方法插入的数据,不可以用insert的方式更新
insert()插入的数据可以用save方法更新

查询

// 插入十条数据for(var i = 0; i < 10; i++) {
... db.collection2.save({"name": "李大狗" + i,"age": i})
... }db.集合名.find() // 查询表中所有数据
db.集合名.find(条件) // 按条件查询(支持多条件)
db.集合名.findOne(条件) // 查询第一条(支持条件,不传参默认显示第一条数据)
db.集合名.find().limit(数量) // 限制数量
db.集合名.find().skip(数量) // 跳过指定数量
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

比较查询

大于:$gt
小于:$lt
大于等于:$gte
小于等于:$lte
非等于:$ne
  • 1
  • 2
  • 3
  • 4
  • 5
db.collection2.find({"age": {"$gt": 7}});
db.collection2.find({"age": {"$lt": 2}});
db.collection2.find({"age": {"$lt": 4, "$gt": 2}});
db.collection2.find({"age": {"$lte": 4, "$gte": 2}});
db.collection2.find({"age": {"$ne": 9}});
  • 1
  • 2
  • 3
  • 4
  • 5

或者:$or

db.collection2.find({"$or": [{"age": 0}, {"name": "李大狗9"}]});
  • 1

in和not in查询(包含、不包含)  

包含: in不包含:in不包含:nin

db.collection2.find({"age": {"$in": [3, 6, 9]}});
db.collection2.find({"age": {"$nin": [3, 6, 9]}});
  • 1
  • 2

查询数量:db.集合名.find().count();

排序:db.集合名.find().sort({“字段名”:1});

1: 表示升序
-1:表示降序

指定字段返回: db.集合名.find({},{“字段名”:0});  

1:返回
0:不返回 # 如下: _id 不返回,即不显示 _id。

db.collection2.find().count();
db.collection2.find().sort({"age": -1}).limit(4);
db.collection2.find({}, {"name": 1, "age": 1, "_id": 0});
  • 1
  • 2
  • 3

修改(更新)

前面 save 在 _id 字段已存在时,就是修改操作,按指定条件修改语法如下: 

db.集合名.update({“条件字段名”:”字段值”},{$set:{“要修改的字段名”:”修改后的字段值”}});

db.collection2.find({"name": "李大狗3"});
db.collection2.update({"name": "李大狗3"}, {"$set": {"age": 55}});
db.collection2.find({"name": "李大狗3"});
  • 1
  • 2
  • 3

删除 db.集合名.remove(条件);

db.collection2.find();
db.collection2.remove({"age": {"gt": 50}});
db.collection2.find();
  • 1
  • 2
  • 3

  • 1

MongoDB基本语法和操作入门相关推荐

  1. mongodb基本语法及操作(增删改查)

    查看有哪些数据库:show dbs 切换到test数据库:use test 查看test数据库中的集合:show collections 我们创建一个王者集合 1新增 db.wangzhe.inser ...

  2. mongodb查询语法

    mongodb查询语法 所有操作分为聚合查询和非聚合查询 聚合查询中又分为:聚合阶段,和聚合操作 聚合阶段主要对文档进行:选择,投影,分组,加减字段,排序,连接 聚合操作是用来实现聚合阶段的功能. 如 ...

  3. python操作mongodb语法_python 操作MongoDB

    安装MongoDB 启动数据库:安装完成指定数据库存放路径 mongod.exe --dbpath c:\data\db 进入目录后运行mongo.exe 成功 创建数据库 >use mydb ...

  4. mongodb 安装包_MongoDB快速入门,掌握这些刚刚好!

    虽说现在关系型数据库还是主流,但是面对某些需求的时候,需要非关系型数据库来补充它,学习一个主流的NoSQL数据库还是很有必要的.MongoDB是一个功能丰富的NoSQL数据库,本文整理了它最常用的部分 ...

  5. NoSQL - MongoDB 常见的shell操作 - 安装

    1.应用场景 主要用于使用客户端工具进行快速地测试mongodb使用.   2.学习/操作 1.文档阅读 MongoDB 创建数据库 | 菜鸟教程 -- 跟着菜鸟走一遍就算入门了 2.整理输出 环境 ...

  6. 用python向mongodb插入数据_Python操作MongoDB数据库(一)

    Python操作MongoDB数据库(一) 前言 干货文章继续出发!隔的时间有些久了哈,对 MongoDB 安装回顾的同学,可以看下windows环境 <初识 MongoDB 数据库>.这 ...

  7. CSS的预编译——less语言基本语法教程(入门)

    less语言基本语法教程(入门) 一.CSS解析 css是一门标记性语言,语法简单,对使用者的要求也比较低. 缺点:1.对于css:使用css时需要书写大量的看似没有逻辑的代码,不方便维护和扩展,不利 ...

  8. MongoDB中的索引操作

    本文来说下MongoDB中的索引操作 文章目录 概述 createIndex() 方法 语法 createIndex() 可选参数 索引操作 测试实例 本文小结 概述 索引通常能够极大的提高查询的效率 ...

  9. python数据库-mongoDB的高级查询操作(55)

    一.MongoDB索引 为什么使用索引? 假设有一本书,你想看第六章第六节讲的是什么,你会怎么做,一般人肯定去看目录,找到这一节对应的页数,然后翻到这一页.这就是目录索引,帮助读者快速找到想要的章节. ...

最新文章

  1. vps建网站python_VPS配置python web环境真吐血
  2. 谷歌、DeepMind强强联手再发布Dreamer:性能远超“前辈”PlaNet
  3. Keras functional API快速入门
  4. oracle存储过程的简单学习2
  5. java国际化---native2ascii.exe 的使用方法
  6. 操作系统与多核处理器
  7. 机器学习笔记(3) 随机森林
  8. Rearchitect Your Web Applications for Microsoft ASP.NET 2.0
  9. 视频教程-R语言实战之行业案例分享视频课程-其他
  10. FlashFXP连接linux服务器(centos7环境)提示连接失败 (Unable to access SFTP sub-system, operation failed.)
  11. Java中的字符串及其中的常用方法
  12. excel解决日期数据无法正常筛选
  13. Anemometer MySQL 【慢查询日志监控平台】(实战)
  14. 郭为重读麦肯锡报告:神州数码转型七年之痒
  15. blog微服务架构代码_DDD+微服务大型案例:Uber如何从复杂的RPC微服务转向面向业务领域的微服务架构DOMA? -优步工程博客...
  16. c# midi窗体_Midi:C#中的Windows MIDI库
  17. 【邢不行|量化小讲堂系列44-实战篇】历年排名前10的基金,在第2年表现如何?Python告诉你答案
  18. Reed-Muller码 (RM码):RM码的布尔函数(Boolean Functions)表示
  19. Redis面试题(2021最新)
  20. 无线wifi智能小车项目java,项目案例:智能小车

热门文章

  1. PHP是4个进程还是五个,PHP多进程(4) :内部多进程
  2. sql server的搜索_在SQL Server中进行全文本搜索
  3. Always On可用性组中SQL Server统计信息
  4. Lock锁的简单使用
  5. css 引入的 方式有哪些? link与post有什么区别??
  6. AT2112 Non-redundant Drive
  7. Spring Cloud 监控相关
  8. Jquery使用小技巧
  9. PHP技巧:PATH_SEPARATOR是什么(Zend Framework引导文件中的路径用法)
  10. 标准BT.656并行数据结构