MongoDB 基础操作
- 启动MongoDB 默认端口27017
mongod --dbpath "数据库目录"
- 查看所有存在磁盘上的数据库
show dbs
- 创建数据库或切换数据库 (使用了不存在的对象即创建该对象)
use 数据库名
- 查看当前数据库存在磁盘上的数据表
show tables
- 创建表
数据库名.表名
- 添加 insert
use locals # 创建数据库 db.user.insert() # 创建表(user) + 添加 insert({}) show dbs # 查看数据库是否创建
# 官方推荐写法 db.user.insertMany([{}]) # 添加多条数据 [{},{},{}] db.user.insertOne({}) # 添加一条
- 查看 find
db.user.find() # 推荐用 db.user.findOne({})
# 并列条件查询 db.user.find({"id":1,"age":20})# 或条件查询 $or db.user.find({$or:[{age:20},{name:"jam"}]})
# 同一个字段的 或查询 $in db.user.find({age:{$in:[20,30,40]}})
# 满足全部条件查询 $all db.user.find({age:{$all:[20,10,30]}})
# 数学比较符
db.user.find({age:{$gt: 73}})
$gt : 大于 $gte: 大于等于 $lt : 小于 $lte: 小于等于 $eq : 等于
- 数据类型
MongoDB中的数据类型:
Object ID :Documents 自生成的 _id
"_id" : ObjectId("5b151f8536409809ab2e6b26")#"5b151f85" 代指的是时间戳,这条数据的产生时间 #"364098" 代指某台机器的机器码,存储这条数据时的机器编号 #"09ab" 代指进程ID,多进程存储数据的时候,非常有用的 #"2e6b26" 代指计数器,这里要注意的是,计数器的数字可能会出现重复,不是唯一的 #以上四种标识符拼凑成世界上唯一的ObjectID #只要是支持MongoDB的语言,都会有一个或多个方法,对ObjectID进行转换 #可以得到以上四种信息#注意:这个类型是不可以被JSON序列化的这是MongoDB生成的类似关系型DB表主键的唯一key,具体由24个字节组成:0-8字节是时间戳,9-14字节的机器标识符,表示MongoDB实例所在机器的不同;15-18字节的进程id,表示相同机器的不同MongoDB进程。19-24字节是计数器
View Code
String: 字符串,必须是utf-8
Boolean:布尔值,true 或者false (这里有坑哦~在我们大Python中 True False 首字母大写)
Integer:整数 (Int32 Int64 你们就知道有个Int就行了,一般我们用Int32)
Double:浮点数 (没有float类型,所有小数都是Double)
Arrays:数组或者列表,多个值存储到一个键 (list哦,大Python中的List哦)
Object:如果你学过Python的话,那么这个概念特别好理解,就是Python中的字典,这个数据类型就是字典
Null:空数据类型 , 一个特殊的概念,None Null
Timestamp:时间戳
Date:存储当前日期或时间unix时间格式 (我们一般不用这个Date类型,时间戳可以秒杀一切时间类型)
- 更新 update
db.user.update({"age":20}, {$set:{"name":"lee"}})# ({"条件"},{"关键字":{"修改内容"}}) 如果条件为空,那么将会修改Collection中所有的数据
# 推荐写法 db.user.updateOne({"name":"lee"},{$set:{"age":20}}) # 改条件匹配的第一条 db.user.updateMany({"name":"lee"},{$set:{"age":18}}) # 改全部
- 删除 remove / delete
#db.user.remove({"age":20})# 推荐写法 db.user.deleteOne({"name":"lee"}) # 删除 条件匹配第一条 db.user.deleteMany({"name":"jam"}) # 删除 条件匹配的全部
- 修改器
- $set :修改
db.user.updateOne({"name":"lee"},{$set:{"age":20}})
- $unset: 强制删除字段
db.user.updateOne({"name":"lee"},{$unset:{"age":1}}) # 1也可以写成true 只要看到age字段就会删除
- $ inc: 引用增加 在原有值的基础上增加
db.user.updateMany({},{$inc:{age:1}}) # 减少即为 -1
- 针对array的修改器(python列表):
- $push 增加元素
db.user.updateOne({"name":"lee"},{$push:{"hobby":"篮球"}})
- $pull 删除元素
db.user.updateOne({"name":"lee"},{$pull:{"hobby":"篮球"}})
- $pushall 迭代添加
db.user.updateOne({"name":"lee"},{$pull:{"hobby":["篮球","足球"]}})
- $pop 删除第一条 / 最后一条 数据
db.user.updateOne({"name":"lee"},{$pop:{"hobby":1}}) # 最后一条 db.user.updateOne({"name":"lee"},{$pop:{"hobby":-1}}) # 第一条
- $ 字符 存储符合条件的元素下表索引
- Object操作 (字典直接 。字段就行 )
db.user.updateOne({"info.name":"jam"},{$set:{"info.age":20}})
- Array中嵌套object
db.user.updateOne({"hobby.age":30},{$set:{"hobby.$.age":25}})
- Object中嵌套Array
db.user.updateOne({"kecheng.class":1},{$set:{"kecheng.class.$":2}})
- 跳过
db.user.find({}).skip(5) # 跳过五条数据
- 分页
db.user.find({}).limit(5) # 只显示5条数据
- 排序
db.user.find({}).sort({age:1}) # 正序 db.user.find({}).sort({age:-1}) # 倒序
转载于:https://www.cnblogs.com/lzmdbk/p/10279921.html
MongoDB 基础操作相关推荐
- mongodb基础操作之聚合操作、索引优化
mongodb基础操作之聚合操作.索引优化 更好的阅读体验 https://www.wolai.com/wrMtYWKdkzKYjoWM1i64qu 目录 聚合操作 聚合管道操作 Map-Reduce ...
- MongoDB 基础浅谈
作者:hazenweng,腾讯 QQ 音乐后台开发工程师 MongoDB 作为一款优秀的基于分布式文件存储的 NoSQL 数据库,在业界有着广泛的应用.下文对 MongoDB 的一些基础概念进行简单介 ...
- 数据库应用----Mongodb 4.0 版本 基础操作---复制集,选举方法、部署认证 (二)
Mongodb 4.0 版本 基础操作-复制集,选举方法.部署认证 (二) 文章目录 Mongodb 4.0 版本 基础操作---复制集,选举方法.部署认证 (二) 一.MongoDB 复制集 二.部 ...
- CentOS7安装MongoDB及基础操作
安装环境说明 系统环境说明 [root@master ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@ma ...
- MongoDB增删改查基础操作
MongoDB高手课_MongoDB_NoSQL-极客时间极客时间推出的MongoDB高手课是帮助互联网从业者学习MongoDB.NoSQL的在线课程,极客时间是面向IT领域的知识服务产品,致力于帮助 ...
- MongoDB 基础用法及学习笔记
MongoDB 基础用法 环境配置与安装 安装 查看MongoDB版本 启动MongoDB服务 检查服务状态 启动服务 打开配置文件,连接MongoDB 查看数据列表 退出 MongoDB 连接 Mo ...
- MongoDB基础命令
MongoDB 入门命令 查看当前数据库 > show dbs admin 0.000GB config 0.000GB local 0.000GB >-- use databaseNam ...
- SQL(一)- 数据库介绍与基础操作
数据库介绍 一.常用的数据库分为两大类: 关系型数据库 非关系型数据库(NoSql) 关系型数据库 概念:是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据. 关系型数 ...
- Mongodb 笔记01 MongoDB 简介、MongoDB基础知识、启动和停止MongoDB
MongoDB 简介 1. 易于使用:没有固定的模式,根据需要添加和删除字段更加容易 2. 易于扩展:MongoDB的设计采用横向扩展.面向文档的数据模型使它能很容易的再多台服务器之间进行分割.自动处 ...
- MongoDB基础使用
5.MongoDB基础使用 5.1.常用的命令(重点) > Help 查看帮助 显示数据库列表 > show dbs 创建数据库 > use dbname 如果数据库不存在,则创建数 ...
最新文章
- Nginx配置和内核优化 实现突破十万并发
- Can't connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘ (2)解决思路
- CompactExifLib:访问JPEG文件中的EXIF标签
- 网络驱动器映射成功但无法实时更新文件需要重新连接_无边界办公——WebDAV文件共享服务构建...
- Vue.js 学习笔记 十 自定义按键事件
- cad插入块_CAD软件中图块无法分解怎么办?
- 计算机专业课顺序,计算机专业课程安排顺序 计算机专业课程安排
- 华林SAP论坛(华林自建的SAP论坛)
- SOX命令:音频位深度、采样率以及码率
- BEEF的搭建与使用
- 证明碰撞集(HITTING SET)问题是NP完全问题
- Oracle中的dual表
- 什么软件可以给图片去雾?分享三种图片去雾软件给你。
- 开源verilog仿真工具iverilog的安装与使用
- 接口测试入门番外篇——如何在谷歌浏览器中集成postman这款接口测试工具呢?
- Android 自定义View 实例2_Clipping Canvas
- 在windows系统写脚本,如何去掉回车换行符
- 使用javascript生成Excel表格(内含实例demo),可下载xlsx.core.min.js、excel.js包
- python小游戏之课堂提问器
- EDA软件如何与望友DFM软件交互?
热门文章
- HDU_2082 找单词 (生成函数)
- 用TCP/IP实现自己简单的应用程序协议:成帧器部分
- Linux群常见问题整理(一)[转]
- 成功就是成为最好的你自己
- 计算机小知识应用,电脑使用小知识
- oracle脚本转mpp脚本,范本:使用expdp/impdp克隆生成一个新数据库
- au6258引脚图及功能_电解电容引脚图/封装
- flask-mail异步发送邮件_Spring Boot与异步任务、定时任务、邮件任务
- SpringMVC的RESTful(二)定制格式
- Baxter实战 (一)ubuntu14.04安装ROS-Indigo