MongoDB学习笔记(基础入门)

文章目录

  • 一、MongoDB是什么?
  • 二、基础操作
    • 1.显示数据库
    • 2.选择数据库
    • 3.创建集合
    • 4.查看集合
    • 5.删除集合
  • 三、数据的基本操作
    • 1.插入数据
    • 2.查看数据
    • 3.修改数据
    • 4.删除数据
  • 总结


一、MongoDB是什么?

MongoDB 是一种文档数据库,它所具备的可扩展性和灵活性可以满足您对查询和索引的需求。

简单来说是一个数据库。

特点

  • 介于关系数据库和非关系数据库之间。
  • 而且它是基于分布式文件存储的数据库。
  • c++语言编写

二、基础操作

1.显示数据库

show databases
在这里插入图片描述

2.选择数据库

use databasename
选择local数据库(注意:这里如果选择的是不存在的数据库,不会报错,后期当该数据库中有数据时会自动创建。)
在这里插入图片描述

3.创建集合

db.createCollection('集合名')
创建集合c1(也可隐式创建)
在这里插入图片描述

4.查看集合

show collections
在这里插入图片描述

5.删除集合

db.集合名.drop()
MongoDB学习笔记(基础入门)_第1张图片

三、数据的基本操作

1.插入数据

db.集合名.insert(Json数据)若集合不存在会隐式创建

在这里插入图片描述
mongodb会给插入的每一条数据增加一个全球唯一的_id(id组成:时间戳、机器码、pid、计数器)。

在这里插入图片描述

可以自己添加_id,在插入的Json数据中增加_id键就可以覆盖(不建议这么做)

在这里插入图片描述
插入多条数据

db.c1.insert([
	{name: 1, age: 12},
	{name: 2, age: 13}
])

MongoDB学习笔记(基础入门)_第2张图片
mongodb支持部分Json语法,因此可以使用for循环插入多条数据.

for(var i = 0; i < 10; i++){
	db.c2.insert({name:'a' + i, age:i})
}

因为for循环是一条一条插入,前九条提示信息看不到,只能看到最后一条插入成功的提示。所以会有WriteResult({ "nInserted" : 1 })

MongoDB学习笔记(基础入门)_第3张图片

2.查看数据

db.集合名.find(条件,[查询的列])中括号内为可选参数

条件:
查询所有数据:{}或不写
查询age=6的数据:{age:6}
查询age=5且性别为男的数据:{age:6,sex:‘男’}
查询的列:
查询所有的列:不写
查询age列:{age:1}
除了age列都显示:{age:0}
不管怎么写系统定义的_id都会显示

显示所有数据
MongoDB学习笔记(基础入门)_第4张图片
显示age=6的数据

在这里插入图片描述
查询age=5且name=a6的数据

在这里插入图片描述
显示age列

MongoDB学习笔记(基础入门)_第5张图片
显示除age外所有列

MongoDB学习笔记(基础入门)_第6张图片
运算符

运算符 作用
$gt 大于
$gte 大于等于
$lt 小于
$lte 小于等于
$ne 不等于
$in in
nin not in

例:
查询age>5的数据
MongoDB学习笔记(基础入门)_第7张图片
查询age=5,8的数据
在这里插入图片描述

3.修改数据

db.集合名.update(条件,新数据,[是否新增,是否修改多条])
是否新增:指条件匹配不到数据则插入(true是插入,false是不插入默认),找不到就将数据插入。
是否修改多条:指将匹配成功的数据都修改(true是,false否默认)。

目的是将名字a1修改为a10,但是默认使用新数据替换匹配到的数据,所以age:1没有了。
MongoDB学习笔记(基础入门)_第8张图片

修改器 作用
$inc 递增
$rename 重命名列
$set 修改列值
$unset 删除列

使用修改器将a2的name修改为a11

MongoDB学习笔记(基础入门)_第9张图片

4.删除数据

db.集合名. remove(条件,[是否删除一条])
是否删除一条:true是,false否默认

删除一条
在这里插入图片描述
全部删除
在这里插入图片描述

总结

MongoDB 的基本操作就是这么多了,很多地方的语法和关系型数据库MySQL很像,但是在细节上还是有差别。我是孤城浪人,一名正在前端路上摸爬滚打的菜鸟,欢迎你的关注。

你可能感兴趣的:(#,mongodb,mongodb,数据库,node.js)