mongoDB--使用指南

一、安装:

1、windows下安装:

下载地址:http://www.mongodb.org/downloads

(1)选择安装系统,并下载
在这里插入图片描述
(2)选择custom,进行下一步:
在这里插入图片描述
(3)选择安装路径:
在这里插入图片描述

具体步骤:

1、把mongodb安装到某一个盘符下的某个文件夹中(D
2、创建数据目录: Ddata/db 文件夹 (该数据目录名称不可更改)
3、找到mongodb文件夹下的bin文件夹打开mongod.exe
4、双击打开mongo.exe
5、浏览器输入127.0.0.1:27017测试安装成功

2、Mac 系统上安装

1、安装
在Mac OS上面安装MongoDB,你可以通过编译源代码来安装 ,也可以在Mac OS上使用Homebrew安装。
这里介绍使用Homebrew安装MongoDB。
首先更新Homebrew的package数据库:

$ brew update
$ brew install mongodb

2、启动MongoDB

$ mongod --config /usr/local/etc/mongod.conf

3、使用MongoDB

$ mongo

二、了解mongoDB:

是一个分布式文件存储的非关系型数据库,是最广泛的nosql数据库,由C++语言编写
特点:高性能、易部署、易使用,存储数据非常方便。

优点:
(1)面向文档储存的数据库(BSON格式存储)
(2)具有丰富的查询指令
(3)支持索引
(4)具有分片系统
(5)无模式
缺点:
(1)占用空间非常大
(2)不支持事务
(3)目前已经不维护32位的系统

nosql与sql数据库的区别:

nosql(not only sql ),是一个非关系型数据库
关系型数据库:以二维表结构存储数据
非关系型数据库:以兼键值对的形式存储数据

在这里插入图片描述在这里插入图片描述

mongoDB相关指令:

一个mongoDB数据库的建立:
创建DB(数据库) --> 创建collection(集合表) --> 数据增删改查

1、基础指令:

 #获取你当前所有的数据库
show dbs   
#创建数据库(没有-创建/存在-使用)
use dataBase_name   
db                # 指查询你当前的数据库(空数据库查询不到)
db.stats()        #查询你当前数据库的状态
db.dropDatabase() #删除你当前的数据库
db.collection_name.find()  #查询你当前集合内的信息

2、Collection聚集集合操作

#创建一个聚集集合
db.createCollection("collection_name", {size: 20, capped: true, max: 100}); #参2不建议写
db.collection_name.isCapped();  #判断集合是否为定容量
db.collection_name.insert()    #快速创建方法:
db.getCollection("collection_name");  #得到指定名称的聚集集合
db.getCollectionNames();    #得到当前db的所有聚集集合
db.printCollectionStats();  #显示当前db所有聚集的状态
# 删除集合
db.collection_name.drop();

3、数据的增删改查

# 查看数据内容
db.collection_name.find()
#插入数据
db.collection_name.insertOne({title:"xxx"})  #插入一条数据(1)
db.collection_name.insert([{title:"xxx"},{name:"xxx"}]) #插入多条数据(2)
db.collection_name.insertMany([{title:"xxx"},{name:"xxx"}]) #插入多条数据(3)
db.collection_name.save([{title:"xxx"},{name:"xxx"}]) #插入多条数据(4)
#修改数据
db.collection_name.update({}.{$set:{name:"xxx"}}) #给所有数据全部添加属性
db.collection_name.update({age: 25}, {$set: {name: 'changeName'}}, false, true); #修改age值是25中的name值
#1、修改的数据不存在---第一个参数false(不添加)true(添加)  
#2、数据有重复的---第二个参数true符合条件的数据均修改,false默认修改第一条数据
db.collection_name.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true);
# $inc 只能给数字类型的数据,在原有数字的基础上增加
#删除数据
db.collection_name.deleteOne({age: 132}); #删除一条数据
db.collection_name.remove({age: 132},true) #删除所有数据中age=132的数据
db.collection_name.remove({}) #删除所有数据

4、其他查询条件指令

#查询所有记录
db.collection_name.find(); 
#查询去重后数据
db.collection_name.distinct("name");

db.collection_name.find({"age": 22});#查询age = 22的记录
db.collection_name.find({age: {$gt: 22}});#查询age > 22的记录
db.collection_name.find({age: {$lt: 22}});#查询age < 22的记录
db.collection_name.find({age: {$gte: 25}});#查询age >= 25的记录
db.collection_name.find({age: {$lte: 25}});#查询age <= 25的记录
db.collection_name.find({age: {$gte: 23, $lte: 26}});#查询age >= 23 并且 age <= 26


db.collection_name.find({name: /mongo/});#查询name中包含 mongo的数据
db.collection_name.find({name: /^mongo/});#查询name中以mongo开头的
db.collection_name.find({}, {name: 1});#查询指定列name数据
db.collection_name.find({age: {$gt: 25}}, {name: 1, age: 1});#查询指定列name、age数据, age > 25

#按照年龄排序
升序:db.collection_name.find().sort({age: 1});
降序:db.collection_name.find().sort({age: -1});

#查询前5条数据
db.collection_name.find().limit(5);
#查询10条以后的数据
db.collection_name.find().skip(10);
#限制数据量/几条数据后
db.collection_name.find().limit(10).skip(5);

#or与 查询
db.collection_name.find({$or: [{age: 22}, {age: 25}]});
#查询第一条数据
db.collection_name.findOne();
#查询某个结果集的记录条数
db.collection_name.find({age: {$gte: 25}}).count();
#查询某一项的记录数目
db.collection_name.find({sex: {$exists: true}}).count();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值