MongoDB的基本使用

一、MongoDB数据库的启动
在桌面打开终端(cmd),输入mongod --dbpath e:datadb,接着在桌面再打开一个终端,输入mongo
二、数据库(存储的数据类型都是字符串或数字)
1.数据库分为关系型数据库(例如mysql)、非关系型数据库(如mongodb)
2.在查找数据方面,关系型数据库的速度要比非关系型数据库快
三、mongodb的常用指令:
1.show dbs:查看服务器中有几个数据库
2.use <数据库>:创建数据库
  1)如果该数据库中没有表则该数据库不会显示出来
  2)如果创建的这个数据库存在则是切换,不存在则是创建
3.db.createCollection("表名"):创建表
此时显示为{"ok":1},1表示成功,若出现0则表示失败
4.db.getCollectionNames():查看当前数据库中的所有表(以数组的形式显示)
5.db.getCollection("表名"):使用某一张表
6.db:查看当前使用的是哪一个数据库
7.db.stats():显示当前所用的数据库的状态
8.db.version():显示当前mongodb的版本
9.db.getMongo():显示当前mongodb的连接机器地址(一般显示为connection to 127.0.0.1)
10.mongodb的端口号:27017,http的端口号:80/8080,https的端口号:443
11.db.dropDatebase():删除数据库
12.db.<表名>.save({key:val}):在表中创建数据
13.db.<表名>.find():查看表中的所有数据
14.db.<表名>.update({key:val},{$set:{key:val},$inc:{key:val}}):更改数据。
  1)其中第一个对象是根据键值对寻找到相应的数据,$set表示修改数据,$inc表示增加或修改(只能是数字的增加或修改)
  2)如:db.student.update({name:"张三"},{$set:{sex:"男"},$inc:{age:10}})表示寻找到name为张三的数据,添加性别(之前没有性别,如果有则是修改),将年龄增加10岁(-10为减少10岁)
  3)其中$set中的key值不能和$inc中的key值相同,即不能修改同一个字段
15.db.<表名>.remove({key:val}):删除某条数据
  db.<表名>.remove({}):删除所有数据
16.db.<表名>.distinct("key"):根据key值来查询去重后的数据
17.db.<表名>.find({key:val}):查询key=val的数据
db.<表名>.find({key:{$gt:val}}):查询key>val的数据
db.<表名>.find({key:{$lt:val}}):查询key<val的数据
db.<表名>.find({key:{$gte:val}}):查询key>=val的数据
db.<表名>.find({key:{$lte:val}}):查询key<=val的数据
18.db.<表名>.find({key:/val/}):查询key中包含val的数据
  db.<表名>.find({key:/^val/}):查询key中以val开头的数据
  db.<表名>.find({key:/val$/}):查询key中以val结尾的数据
19.db.<表名>.find({},{key:1}):查询指定列的数据,第一个参数是筛选的内容(若为空对象则查找全部),第二个参数是对筛选内容的过滤(1表示显示,0表示隐藏)
20.db.<表名>.find().sort({key:1}):根据key值进行排序(1表示升序,0表示降序)
21.db.<表名>.find().limit(n):查询前n项数据
22.db.<表名>.find().skip(n):查询跳过n项之后的所有数据
23.db.<表名>.find().skip(n).limit(m):查询n-m之间的数据
24.db.<表名>.findOne():查询第一条数据
25.db.<表名>.find({$or:[{key:val1},{key:val2}]}):与操作,根据key查找val1和val2的数据
26.db.<表名>.find().count():查看数据库中有多少条数据

原文地址:https://www.cnblogs.com/Leslie-Cheung1584304774/p/10544111.html