安装mongodb
在bin文件下创建mongod.conf
写入
dbpath = 数据存储路径
打开cmd进入bin目录输入
mongod.exe -f mongod.conf
另起一个cmd进入bin目录输入mongo启动客户端
mongodb语法
查看数据库
show dbs
使用数据库
use 数据库名
查看集合
show collections
创建数据库
use 数据库名
注意:如果数据库不存在则创建数据库,否则切换到指定的数据库
注意:如果刚刚创建的数据库不在列表内,如果要显示它,我们需要向刚刚创建的数据库中插入一些数据
断开连接
exit
集合操作
插入数据
db.集合名.insert({'name':'张三'})
查询数据
db.集合名.find()
db.集合名.findOne('uid':2)
删除数据
db.集合名.remove({'uid':2})
清空集合
db.集合名.remove({})
删除集合
db.集合名.drop()
更新数据
第⼀一个⽂文档为查询的⽂文档,第⼆二个⽂文档为修改为什什么⽂文档, 后⾯面的⽂文档会覆盖我们要修改⽂文档的整个内容
db.集合名.update({"uid":2},{"uname":"jon"})
使用修改器$inc更新
对uid为2的用户的年龄增加20
db.集合名.update({'uid':2},{'$inc':{'age':20}})
对uid为2的用户的年龄减少20
db.集合名.update({'uid':2},{'$inc':{'age':-20}})
添加一个字段$set修改器
db.集合名.update({'uid':2},{'$set':{'sex':'male'}})
删除一个字段$unset修改器
db.集合名.update({'uid':2},{'$unset':{'sex':true}})
数组的更新
db.集合名.update({'uid':2},{'$push':{'email':'a'}})
$pushAll在元组中增加多个元素,但是不检查元素是否存在
db.集合名.update({'uid':2},{'$pushAll':{'email':['a','b','c','d']}})
$addToSet 往数组中添加一个不重复的元素
db.集合名.update({'uid':2},{'$addToSet':{'email':'d'}})
添加多个不不重复的元素用*$eache*操作符
db.users.update({"uid":2},{"$addToSet":{"email":{"$each":["e","g","f","d"]}}})
删除数据元素
db.users.update({"uid":2},{"$pop":{"email":-1}}) #从左侧删除⼀一个元素
db.users.update({"uid":2},{"$pop":{"email":1}})#从右侧删除⼀一个元素
db.users.update({"uid":2},{"$pull":{"email":"b"}}) #删除数组内的指定⼀一个元素
db.users.update({"uid":2},{"$pullAll":{"email":["b","c"]}}) #删除数组内指定的多个元素
数组元素的更更新 通过数组.下标修改
db.users.update({"uid":2},{"$set":{"email.0":"tim.qq.com"}})
等于 =
db.users.find({"salary":3000}).pretty()
小于 <
db.users.find({"salary":{$lt:3000}}).pretty()
于等于 <=
db.users.find({"salary":{$lte:3000}}).pretty()
大于 >
db.users.find({"salary":{$gt:3000}}).pretty()
大于等于 >=
db.users.find({"salary":{$gte:3000}}).pretty()
不等于 !=
db.users.find({"salary":{$ne:3000}}).pretty()
MongoDB 的 find() ⽅方法可以传⼊入多个键(key),
每个键(key)以逗号隔开,即常规 SQL 的 AND 条件
db.users.find({"id":2, "sex": "M"}).pretty()
MongoDB OR 条件语句句使⽤用了了关键字 $or,语法格式如下:
db.users.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
).pretty(