首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mongoDB基本操作

mongoDB基本操作

作者头像
超超不会飞
发布2020-09-18 10:08:17
3570
发布2020-09-18 10:08:17
举报
文章被收录于专栏:超超不会飞超超不会飞

创建数据库

use DATABASE_NAME 如果数据库不存在则创建,否则切换到指定数据库

db查看当前数据库名

show dbs 查看所有数据库

show tables 查看集合

删除数据库

db.dropDatabase() 删除当前数据库

db.collection.drop() 删除集合,collection为集合名,例db.student.drop()

插入文档

db.COLLECTION_NAME.insert(document) 实例

db.col.insert({
	title: 'MongoDB教程',
	tags: ['mongodb', 'database', 'nosql'],
	url: 'www.runoob.com'
})

我们也可以把数据定义为变量

document = ({  // 记得这边有个括号
	title: 'MongoDB教程',
	tags: ['mongodb', 'database', 'nosql'],
	url: 'www.runoob.com'
})

db.col.insert(document)

插入文档也可以使用 db.col.save(document) 命令,如果不指定 _id 字段save()方法类似 于 insert()。如果指定 _id 字段,则会更新该 _id 的数据。

更新文档

update()方法

db.collection.update(
	<query>,  // 查询条件
	<update>,  //update的对象和一些更新的操作符
	{
		upsert: <boolean>,  // 可选
		multi: <boolean>,   // 可选
		writeConcern: <document>  // 可选,抛出异常的级别
	}
)

例子 db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}})

以上语句只会修改第一条发现的文档,如果你要修改多条相同的文档,则需要设置multi参数为true

save()方法

db.collection.save(
	<document>, // 传入文档用来替换之前的文档
	{
		writeConcern: <document>
	}
)

例子

db.col.save({
	"_id" : ObjectId("56064f89ade2f21f36b03136"),  // id唯一
    "title" : "MongoDB",
    "description" : "MongoDB 是一个 Nosql 数据库",
    "by" : "Runoob",
    "url" : "http://www.runoob.com",
    "tags" : [
            "mongodb",
            "NoSQL"
    ],
    "likes" : 110
})

删除文档

db.collection.remove(
	<query>,       // 可选,删除的文档的条件
	{
		justOne:<boolean>,   // 可选,如果为true或1,则只删除一个文档
		writeConcern: <document>  // 可选,抛出异常级别
	}
)

例子 db.col.remove({'title':'mongodb'})

db.col.remove({}) 删除所有数据

查询文档

db.col.find() 查看已插入的文档 db.col.find().pretty() 输出好看的格式 db.col.findOne() 只返回一个文档

条件操作符

(>) 大于 - $gt (<) 小于 - $lt (>=) 大于等于 - $gte (<= ) 小于等于 - $lte db.col.find({"likes" : {$gt : 100}}) 查找likes大于100的数据

AND条件

传入多个键值然后逗号隔开 db.col.find({key1: value1, key2: value2}).pretty()

OR条件

	[
		{key1: value1}, {key2: value2}
	]
}).pretty()

$type操作符

类型

数字

Double

1

String

2

Object

3

Array

4

Binary data

5

Object id

7

Boolean

8

Date

9

Null

10

不全,完整表格访问这里

db.col.find({'title' :{$type: 2}}) 如果title为String则输出

limit and skip

db.col.find().limit(2) 只读取两条 db.col.find().limit(1).skip(1) 跳过第一条,只显示第二条 skip默认为0

sort()方法

1升序,-1降序

db.col.find().sort({key: 1})

例子 db.col.find({}, {'title': 1, _id: 0}).sort({'likes': -1})

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-04-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建数据库
  • 删除数据库
  • 插入文档
  • 更新文档
    • update()方法
      • save()方法
      • 删除文档
      • 查询文档
      • 条件操作符
        • AND条件
          • OR条件
          • $type操作符
            • limit and skip
              • sort()方法
              相关产品与服务
              云数据库 MongoDB
              腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档