Mogondb

1.什么是[NoSQL]数据库

数据库:进行高效的、有规则的进行数据持久化存储的软件

NoSQL数据库:Not only sql,指代非关系型数据库

优点:高可扩展性、分布式计算、低成本、灵活架构、半结构化数据、简化关联关系

缺点:没有标准化、有限查询、不直观


Mogondb_第1张图片

2.常见[NoSQL]数据库 BSON==ison

列存储:Hbase、Cassandra、Hypertable

文档存储:MongoDB、CouchDB

k-v存储:TokyoCabinet、BerkeleyDB、MemcacheDB、redis

对象存储:Neo4J、Versant

Xml数据库:BerkeleyDB、BaseX

3.MongoDB概述

MongDB是一个基于分布式文件存储的NoSQL数据库

C++编写的运行稳定性能高的数据库

模式自由

面向集合

完整索引支持

复制和高可用性

more …

4.Mongodb下载安装

官方网站:https://www.mongodb.com/

下载【偶数为稳定版,如1.6,奇数为开发版,如1.7】

windows安装mongoDB

ubuntu安装mongoDB

5.Mongodb术语解释

database--database:数据库

table – collection:数据库表 – 集合

row – document: 数据记录 – 文档

column – field:数据字段 – 域

index – index :索引 – 索引

table-join – None:表连接~

primary key – primary key :主键

6.Mongodb基本操作

mongoDB将数据存储为一个文档

数据由 key=value 的键值对的形式组成

数据的操作:增删改查

nosql三元素:数据库 – 集合 – 文档 [--域]

7.MongoDB基本语法——数据库操作

db:查看当前指向的数据库

db.getName()

db.getHelp()查看db变量的所有办法

show dbs:查看当前所有的数据库

use <数据库名称>:指向一个数据库

Use数据库不会创建数据库,如果操作数据会自动创建数据库

db.dropDatabase():删除当前指向的数据库



Mogondb_第2张图片

8.MongoDB基本语法——集合操作

show collections:查看当前数据库所有集合 db.createCollection([, options]):创建一个集合

db.<集合名称>.drop():删除指定的集合


Mogondb_第3张图片
Mogondb_第4张图片

9.MongoDB基本语法——数据类型

ObjectID:文档id

String:字符串

Boolean:布尔值

Integer:整数

Double:浮点数

Arrays:数组或者列表

Object:嵌入的文档

Null:空值

Timestamp:时间戳

Date:日期时间

10.MongoDB基础语法——增加数据

语法:db.<集合名称>.insert(文档)

集合可以是原来存在的,可以是不存在的

文档:就是BSON (JSON)格式【python中的dict】表示的数据(dict)

简单查询:db.<集合名称>.find() 查询指定集合的数据

db.<集合名称>.find().pretty()改变数据列出方式


Mogondb_第5张图片
Mogondb_第6张图片

11.MongoDB基础语法——更新数据

语法:db.<集合名称>.update(,,[multi:])

update默认会修改全部;加$set会把添加内容追加到数据后。

db.user.updateOne({name:"haha"},{$set:{age:28,name:"hehe"}})

指定属性更新:$opration

multi:默认false更新符合条件第一条,设置true全集合更新


Mogondb_第7张图片
Mogondb_第8张图片
Mogondb_第9张图片
Mogondb_第10张图片
Mogondb_第11张图片

12.MongoDB基础语法——保存数据

语法:db.<集合名称>.save(文档)

特征:[_id]如果数据不存在~添加,如果数据存在~修改


Mogondb_第12张图片
Mogondb_第13张图片

13.MongoDB基础语法——删除数据

语法:db.<集合名称>.remove(, {justOne:})

参数query:删除文档的条件

参数justOne:设置为true或者1,删除一条;默认false删除多条


Mogondb_第14张图片
Mogondb_第15张图片
Mogondb_第16张图片

14.MongoDB基础语法——查询数据

基本查询

find([{文档条件}]):全集合查询

findOne([{文档条件}]):查询第一个

pretty():将查询结果格式化展示


Mogondb_第17张图片
Mogondb_第18张图片

14.1比较运算符(关系运算符)

默认判断,无运算符

$lt:little~小于 <  less than

$lte:little or equals~小于等于 <=

$gt:granter~大于 >

$gte:granter or equals~大于等于 >=

例:

Mogondb_第19张图片
Mogondb_第20张图片

14.2逻辑运算符

逻辑与:并且运算,默认操作,无运算符

逻辑或:或者运算,$or


Mogondb_第21张图片
Mogondb_第22张图片

14.3范围运算符

$in:判断指定条件是否包含在某个范围内

$nin:判断指定条件是否不包含在某个范围内


Mogondb_第23张图片
Mogondb_第24张图片

14.4正则条件

/reg/:普通正则表达式

$regex:指定正则表达式


Mogondb_第25张图片
Mogondb_第26张图片

14.5自定义条件

$where:通过函数自定义条件[JS函数]

指定函数中,返回boolean类型的值

this表示每个要查询的文档


Mogondb_第27张图片

14.6数据查询——限制查询条数

.limit(count)


Mogondb_第28张图片

14.7数据查询——跳过记录行数

.skip(num)


Mogondb_第29张图片
Mogondb_第30张图片

14.8数据查询——投影:查询指定的域

find({}, {投影字段:1/0})


Mogondb_第31张图片

14.9数据查询——排序

.sort({字段:1/-1, ...})


Mogondb_第32张图片

14.10数据查询——统计

.count().

count()

db.<集合名称>.count({条件})


Mogondb_第33张图片

14.11数据查询——去重

db.<集合名称>.distinct(“去重域名称”, {条件})


Mogondb_第34张图片

你可能感兴趣的:(Mogondb)