MongoDB一种非关系数据库,优点是存储数据便捷,现在也越来越多的人开始使用,其操作指令与关系型数据库(如mysql)不太一样,以下是个人在加上网上的学习所总结的几种操作指令
可以说MongoDB的集合(collection)等同于mysql的表(table),而集合中的数据叫做文档等同于mysql表中的记录
无论事mysql还是MongoDB都有图形化界面软件,常见的有Navicat,SQLyog,PhpMyadmin,Workbench等等一些,可以自行安装
###全文所有的collection是你们自己的集合名称,自行修改使用
一、添加数据库
use database(填写你的数据库名称)------没错就这么一行,不像mysql中还需要在去定义属性的类型和长度。当出具存入时,这个数据库会直接生成,当没存储数据时,这个数据库是不存在的
二、添加数据(insert、insertone、insertmany)
######在数据库端(insertOne和insertMany都是进行插入,insertOne是每次插入一个数据,insertMany是一次插入多个数据,而insert是既可以插入一个也可以插入多个),只是为了能一眼看出来插入数据的数量所以才分出来的one和many,个人见解。。。
db.collection.insert(
{
“id”: “58”,
“name”: “XXXXX有限公司”,
“loginlocation”: “XXXXXX东路18号2号楼二层17室”,
“worklocation”: “XXXXXX国际艺术区F座00-02”,
“companystyle”: “XXXXXXXX”,
},
{
“id”: “59”,
“name”: “XXXXXXXX管理有限公司”,
“loginlocation”: “XXXXXXXX南路168号1幢1114室”,
“worklocation”: “XXXXXXXX长安兴融中心4号楼10层CD区”,
“companystyle”: “XXXXXXXX”,
}
)######也可以写成:
data1 = [{
“id”: “58”,
“name”: “XXXXXXXX管理有限公司”,
“loginlocation”: “XXXXXXXX东路18号2号楼二层17室”,
“worklocation”: “XXXXXXXX怡乐中路422号大稿国际艺术区F座00-02”,
“companystyle”: “XXXXXXXX”,
}, {
“id”: “59”,
“name”: “XXXXXXXX管理有限公司”,
“loginlocation”: “XXXXXXXX西站南路168号1幢1114室”,
“worklocation”: “XXXXXXXX大街长安兴融中心4号楼10层CD区”,
“companystyle”: “XXXXXXXX”,
}, {
“id”: 1,
“name”: “XXXXXXXX管理合伙企业(有限合伙)”,
“loginlocation”: “XXXXXXXX基金园区405-460”,
“worklocation”: “XXXXXXXX望京园602#楼27层3120”,
“companystyle”: “XXXXXXXX”,
}, {
“id”: 2,
“name”: “XXXXXXXX管理有限公司”,
“loginlocation”: “XXXXXXXX黄村东大街38号院3号楼5层516”,
“worklocation”: “XXXXXXXX西城区平安里西大街4号”,
“companystyle”: “XXXXXXXX”,
}]
db.collection.insert(data1)三、修改数据(update),默认情况下update会覆盖之前的数据
实例:
db.collection.update({“id”:“59”}, {“id”:2})#将id为59的改为2,这种方法是错误的db.collection.update({“id”:59}, {$set:{“id”:2}}) #这才是对合适的修改数据方式,只会修改值的数据,其他数据并不会删除
四、查询数据(find,findOne,findmany)findone用来查询满足要求的第一个的文档,findmany查询满足要求的所有数据
####常见操作指令
$gt : >
$lt : <
$gte: >=
$lte: <=
$ne : !=、<>
$in : in
$nin: not in
$all: all
$or:or
$set:设置键值
$unset:删除键值
$not: 反匹配(1.3.3及以上版本)db.collection.find()[0];#可以使用索引进行定位
db.collection.find().count();用来统计文档数量
db.collection.find() #进行查询集合中的数据
db.collection.find().pretty() # 当不是在可视化软件时,查询的数据不规范,这时需要用pretty
db.collection.find({“name”:“XXXXXXXX管理有限公司”})
db.collection.find({“id”:{"$gt":5}})
db.collection.find({“id”:null}) #查询id为空的文档五、删除数据remove,deleteOne,deleteMany(remove默认删除多个,添加true,就只会删除满足要求的第一个)
######删除文档
db.collection.remove({“age”:23},true)
db.collection.remove({“id”:“58”}) #这是删除文档,一整行信息
db.collection.deleteOne({“id”:55})
######删除集合(collection)
db.collection.drop() #这是删除MongoDB的集合数据