标签:hobby name MongoDB tablename db 简单 操作 find
一. MongoDB的启动
1. 启动MongoDB服务
mongod --dbpath d:\data # 数据库存放路径, 模式c:\data
mongod --install # 安装windows服务
mongod --remove # 卸载windows服务
2. 客户端连接
mongo
二. MongoDB的增删改查
1. 增
db.tablename.insertOne({}) 插入一条数据
db.tablename.insertMany([{}, {}]) 插入多条数据
2. 删
db.tablename.deleteOne({}) 删除符合条件的第一条数据
db.tablename.deleteMany({}) 删除符合条件的所有数据
3. 改
db.tablename.updateOne({}, {"$set": {}}) 修改符合第一个参数条件的第一条数据, 改为第二个参数内容
db.tablename.updateMany({}, {"$set: {}"}) 修改符合第一个参数条件的所有数据, 改为第二个参数内容
4. 查
db.tablename.findOne({}) 查询符合条件的第一条数据
db.tablename.find({}) 查询符合条件的所有数据
三. MongoDB的数据类型
ObjectId :Documents 自动生成的 _id
_id:ObjectId("5cb69a23815ea7295f8bad43") 自动生成的 json数据中不包含ObjectId类型 id类型uuid
String: 字符串,必须是utf-8
Boolean: 布尔值,true 或者false (这里有坑哦~在我们大Python中 True False 首字母大写)
Integer: 整数 (Int32 Int64 你们就知道有个Int就行了,一般我们用Int32)
Double: 浮点数 (没有float类型,所有小数都是Double)
Arrays: 数组或者列表,多个值存储到一个键 (list哦,大Python中的List哦)
Object: 深度<=4 如果你学过Python的话,那么这个概念特别好理解,就是Python中的字典,这个数据类型就是字典
Null: 空数据类型 , 一个特殊的概念,None Null
Timestamp: 时间戳 通常不用这个数据类型 如果存储时间 Double
Date: 存储当前日期或时间unix时间格式 (我们一般不用这个Date类型,时间戳可以秒杀一切时间类型)
四. MongoDB的$关键字
1. 数学比较符(gt, lt, ne...)
db.tablename.find({"age" : {"$gt": 50}}) 年龄大于50的
2. 查询关键字(in, or, and, all)
db.tablename.find({"age": {"$in": [10, 20]}}) 年龄为10或者20的
db.tablename.find({"$or": [{"age": 10}, {"name": "xxx"}]}) 年龄为10或者名字为xxx的
db.tablename.find({"hobby": {"$all": ["x", "xx"]}}) 查询子集
3. $关键字的特殊用法
db.tablename.updateOne({hobby:"娟儿"},{$set:{"hobby.$":"小圈儿"}}) 存储符合条件元素的下标索引
五. 修改器
$set - 强制替换覆盖
{$set:{name:123}}
$unset - 强制删除字段
{$unset:{name:1}}
$inc - 引用增加, 原有数值基础上增加 1
{$inc:{age:1}}
$push append 在array中追加
db.users.update({name:"AlexDSB"},{$push:{hobby:"特斯垃圾"}})
$pushAll extend 在array中追加列表中的所有元素
db.users.update({name:"AlexDSB"},{$pushAll:{hobby:["22寸轮毂","V8","欧林斯"]}})
$pull remove 在array中删除一个元素
db.users.update({name:"AlexDSB"},{$pull: {hobby:"V8"}})
$pullAll 在array中删除一堆元素
db.users.update({name:"AlexDSB"},{$pullAll: {hobby:["小敏","芙蓉姐姐"]}})
$pop pop 删除第一个 -1 或最后一个 1 的值
db.users.update({name:"AlexDSB"},{$pop: {hobby:1}})
六. 查询结果的显示
1. sort排序
db.tablename.find().sort({"_id": -1})
2. skip跳过, 跳过几条数据再显示
db.tablename.find().skip(num)
3. limit限制, 限制几条数据
db.tablename.find().limit(num)
4. 优先级,分页
先排序, 再跳过, 最后限制
db.tablename.find({}).sotr(_id:-1).limit(num).skip((page-1)*num)
七. pymongo模块的使用
1. 导入模块
from pymongo import MongoClient
2. 创建一个客户端对象
mc = MongoClient() # 默认host=localhost, port=27017
3. 指定库
db = mc["databasename"]
4. 操作库
db.tablename.find()
标签:hobby,name,MongoDB,tablename,db,简单,操作,find 来源: https://www.cnblogs.com/q767498226/p/11094422.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。