MongoDB数据库的基本操作

  • 创建数据库
//use+数据库名
>use mydb
//显示当前选定的数据库
>db
//查看当前数据库列表
>show dbs
//隐式创建集合
>db.movies.insert({"name","尖峰时刻"})
  • 删除数据库
//先切换到要删除的数据库
use mydb
db.dropDatabase()
  • 删除集合
db.users.drop()
  • 创建集合
    -创建集合的时候可以指定配置项,设置集合的基本属性
字段类型描述
cappedboolean(可选)如果为 true,则创建固定集合。固定集合是指有着固定大小的集合,当达到最大值时,它会自动覆盖最早的文档。当该值为 true 时,必须指定 size 参数。
autoIndexIDboolean(可选)如为 true,自动在 _id 字段创建索引。默认为 false。
size数值(可选)为固定集合指定一个最大值(以字节计)。如果 capped 为 true,也需要指定该字段
max数值(可选)指定固定集合中包含文档的最大数量。
db.createCollection("movies")

db.createCollection("mycol", { capped : true, autoIndexID : true, size : 6142800, max : 10000 } )
  • 数据类型

    • String:字符串。存储数据常用的数据类型。在 MongoDB 中,UTF-8 编码的字符串才是合法的。
    • Integer:整型数值。用于存储数值。根据你所采用的服务器,可分为 32 位或 64 位。
    • Boolean:布尔值。用于存储布尔值(真/假)。
    • Double:双精度浮点值。用于存储浮点值。-
    • Min/Max keys:将一个值与 BSON(二进制的 JSON)元素的最低值和最高值相对比。
    • Arrays:用于将数组或列表或多个值存储为一个键。
    • Timestamp:时间戳。记录文档修改或添加的具体时间。
    • Object:用于内嵌文档。
    • Null:用于创建空值。
    • Symbol:符号。该数据类型基本上等同于字符串类型,但不同的是,它一般用于采用特殊符号类型的语言。
    • Date:日期时间。用 UNIX 时间格式来存储当前日期或时间。你可以指定自己的日期时间:创建 Date 对象,传入年月日信息。
    • Object ID:对象 ID。用于创建文档的 ID。
    • Binary Data:二进制数据。用于存储二进制数据。
    • Code:代码类型。用于在文档中存储 JavaScript 代码。
    • Regular expression:正则表达式类型。用于存储正则表达式。
  • 文档插入

dn.movies.insert({"name","尖峰时刻"})
  • 文档查询 find()
//查询集合中的所有数据
db.movies.find()

//格式化显示查询的结果集
db.movies.find().pretty()
  • 条件查询

//等于
db.users.find("age":21) 
//小于
db.users.find("age":{$lt:21})
//小于等于
db.users.find("age":{$lte:21})
//大于
db.users.find("age":{$gt:21})
//大于等于
db.users.find("age":{$gte:21})
//不等于
db.users.find("age":{$ne:21})
  • and条件
db.user.find({"age":21,"name":"xul"})
  • or条件
db.user.find({$or:[{"age":21},{"name":"xul"}]})
  • and 和or条件
db.user.find({"age":21,$or:[{"name":"xul"},{"sex":"man"}]})
  • 更新操作
    • 基本格式
    • db.user.update(query,update,upset,multi)
    • query : 修改是的过滤条件
    • update : 要更新的字段
    • upset:未发现复合的数据,是否进行插入(true插入)
    • multi:是否进行多行更新(true 多行更新)
db.user.update({"age":21},{$set:{"name":"updatetest"}},0,1)
  • 删除文档
//可添加过滤条件,使用与find相同
db.user.remove()
  • 映射
//映射就是只显示集合中的某些字段,1:显示,0:不显示
db.user.find({},{"age":1,"name":0})
  • 分页

    • limit() 设置要显示的条数
    • skip() 设置从第几条开始显示
db.user.find().limit(1).skip(1)
  • 排序

    • sort(key:1) 指定排序字段,1:升序,-1:降序
db.user.find().sort("name":-1)
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值