码迷,mamicode.com
首页 > 数据库 > 详细

mongodb基础语法

时间:2019-01-16 21:37:33      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:数据库   倒数   优先级   limit   元素   数据类型   库存   god   价格   


Mongodb与关系型数据库最大的区别就是无约束, 既无字段(外键等)约束, 也没有数据类型约束, 以json存储


安装
启动Mongodb(默认在c盘找 data/db/文件夹)
服务端:
mongod --dbpath "制定数据库目录"
默认端口 27017
客户端:
mongo



常用命令:

show dbs
查看所有存在磁盘上的数据库

show tables
查看当前数据库存在磁盘上的表(collections)

use db
创建(不存在这个名字) 或者 切换数据库

db
当前数据库

db.user(表名)
创建表



db.user.insertOne({"name": "Amber"})
db.user.insertMany([{"name": "May"}, {"name": "Ryan"])



db.user.deleteOne({"name": "Amber"})
db.user.deleteMany([{"name": "May"}, {"name": "Ryan"])



updata 需要结束一下修改器
({"条件"},{"关键字(修改器)":{"修改内容"}})

$set 修改, 没有则添加一个字段
db.user.updataOne({‘name‘: ‘Ryan‘}, {$set: {‘age‘: 18}})

$unset 删除Field
db.user.updataOne({‘name‘: ‘Ryan‘}, {$unset: {‘age‘: 1}})

$inc 将查询到的某个结果,加上一个某个值
db.user.updateOne({‘name‘: ‘Ryan‘}, {$inc: {‘age‘: -10}})


array 修改器

$push 在array(list)尾端添加一个新元素
db.user.updateOne({‘name‘: ‘Ryan‘}, {$push: {‘hobby‘: ‘喝酒‘}})

$pull 尾端删除一个元素
db.user.updateOne({‘name‘: ‘Ryan‘}, {$pull: {‘hobby‘: ‘做梦‘}})

$pop 删除 1是倒数第一个, -1 是正数第一个
db.user.updateOne({‘name‘: ‘Ryan‘}, {$pull: {‘hobby‘: 1}})

$pushAll
db.user.updateOne({‘name‘: ‘Ryan‘}, {$pushAll: {‘hobby‘: [‘爬山‘, , ‘游泳‘]}})


$ 代指符 $存储符合条件的元素下标(索引)

Array中的Object
"hobby" : [
"喝酒",
{
"name" : "ball",
"price" : 100
},
"爬山",
"游泳"
如果要修改 ball 的价格 200
db.user.updateOne({‘hobby.name‘: ‘ball‘}, {$set: {‘hobby.$.price: 200}})

Object中的Array
{
"info" : {
"id" : 1,
"name" : "Ryan",
"age" : 73,
"hobby" : [
"喝酒",
"爬山"
]
}
}
把喝酒改成游泳
db.user.updataOne({‘info.hobby‘: ‘喝酒‘}, {$set: {‘info.hobby.$‘: ‘游泳‘}})



db.user.find({条件})


db.user.find({{"id":2,"age":18}})


db.user.find({$or: [{‘age‘: {$gt: 18}}, {‘name‘: ‘May‘}]})

in
db.user.find({‘age‘: {$in: [10, 20, 30]}})




sort, skip, limit:
skip(5) 跳过五条数据
limit(5) 只显示五条数据

sort({age:1}) 升序
sort({age:-1}) 降序

如果三个关键字同时出现,优先级如下
1.sort 2.skip 3.limit

db.user.find().sort({‘field‘: 1 or -1}).skip(n).limit(n)




pymongo
注意:
‘_id‘: ObjectId(‘5c3eddb16c347e190d0510cc‘ 是ObjectId类的对象
如果要序列化,也先str(_id),强转字符串在序列化

mongodb基础语法

标签:数据库   倒数   优先级   limit   元素   数据类型   库存   god   价格   

原文地址:https://www.cnblogs.com/amber-liu/p/10279322.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!