当前位置: 首页 > news >正文

MongoDB 常用命令

库操作
show dbs 查看系统中的数据库列表
注:数据库中必须有内容才会显示

 

db = db.getSiblingDB("<数据库名>")
or
use <数据库名>
切换当前数据库
注:如果数据库不存在,则创建数据库
任何一种方法都是可以的,并把db值设置为指定的数据库,然后可以使用db来管理新的当前数据库。

 

db.dropDatabase() 删除当前数据库
注:删除当前数据库,然后在不改变当前数据库的情况下使用句柄创建一个集合,则被删的数据库会被重新创建。

 

db.copyDatabase("<当前数据库名>", "<备份库名>", [hostname])
复制数据库,创建除名称外一模一样的数据库
注:可选的hostname参数指定当前库MongDB服务器主机名。

 

db 显示当前数据库


集合操作
show collections 查看当前数据库中包含的集合的名单

 

db.createCollection("<集合名>", {<options>}) 创建集合
注:参数二可选对象
属性          说明
capped         布尔,如果为true,表示该集合是一个封顶集合,它不会增长到比size属性指定最大规模更大。默认:false
autoIndexID     布尔,如果为true,表明自动为添加到集合的每个文档创建一个_id字段并实现该字段上索引。这对封顶集合应该是false。默认true
size          字节单位大小,用于封顶集合。最旧的文件被删除,以腾出空间给新文件
max         在封顶集合中允许的最大文档数。最旧的文件被删除,以腾出空间给新文件


db.<集合名>.drop()
or
coll = db.getCollection("<集合名>")
coll.drop() 删除集合

 

db.<集合名>.find()
or
coll = db.getCollection("<集合名>")
coll.find(query) 在集合中查看文档
注:可选query参数指定包含字段和值的查询文档与集合中的文档匹配,并返回匹配内容。例:coll.find({speed:"120mph"})

 

db.<集合名>.insert({})
or
db.<集合名>.save({})
在集合中插入文档数据(如果集合不存在会被创建,save也是)
将同类数据视为一个集合
集合中数据具体相似的属性
集合是一个容器,内部可放置N多数据
可以对这些数据进行筛选、排序

db.<集合名>.remove({筛选条件},false)
从集合中删除文档 参数1:筛选条件。参数2:可选参数,是否单行删除,默认false。

 

db.<集合名>.save({ "_id" : ObjectId("57e26b294a655f35e13d6f5d"), "name" : "hung", "age" : 18})
or
db.<集合名>.update( {筛选条件}, {$set:{"name":"jin","up":true}},
{upsert:true,multi:true}) 更新集合中的文档
参数一:更新文档的条件
参数二:更新时使用的更新运算符,以及更新属性
常用运算符:$inc递归该字段值。$set设置字段值。$push将一个条目推送数组。$rename重命名字段。等··
参数三:可选,两个属性。multi(匹配到的所有文档更新,默认false只更新第一条)和upsert(若没有找到匹配项,创建一个,默认false不创建),布尔。

*******************************************************************

db.<集合名>.pretty() 整齐的显示查询文档

db.<集合名>.find().sort({属性:1/-1}) 按指定的属性排序
1是正序,-1:倒序

db.<集合名>.find().limit(n) 显示前n条数据

db.<集合名>.find().skip(n) 跳过前n条数据

条件查找
db.<集合名>.find({属性:value}) 属性==值
db.<集合名>.find({属性:{运算符:value}})

运算符:
$lt       小于
$lte     小于等于
$gt      大于
$gte    大于等于
$ne     不等于

对同一属性使用两个运算符
db.<集合名>.find({ 属性: { 运算符1:value, 运算符2:value } })
如:db.<集合名>.find({ age: { $gt: 6, $lt: 16 } })

对不同属性同时限定条件(两个条件同时成立)
db.<集合名>.find( {属性1: { 运算符:value }, 属性2: { 运算符:value }})

或条件
db.<集合名>.find({
$or: [
{属性: value},
{属性: value},
{属性: value}
]
})

使用函数筛选数据
db.<集合名>.find({
$where: function(){
return true/false
}
})

转载于:https://www.cnblogs.com/huangjinliang/p/5894097.html

相关文章:

  • 使用异或解题 —— 序列中仅出现一次的两个数
  • 为什么我从来不无偿加班?你也不应该! 【转载】
  • MySQL主从同步配置(Ubuntu)
  • C语言学习笔记--指针和数组的关系
  • css3样式二
  • 手机端轻应用模拟原生的下拉刷新效果(JavaScript)
  • 樱花漫地集于我心,蝶舞纷飞祈愿相随---总结 顕出:void-sampling 显示:void-sampling...
  • node.js基础 1之简单的nodejs模块
  • Xcode 8 支持 iOS 7 真机解决过程记录
  • ajax 页面加载
  • C++-Qt【2】-实现一个简单的记事本
  • Python 学习之---文件目录处理
  • bootstrap0
  • 常用快速原型设计工具大比拼、原型设计工具哪个好用
  • Spring注入方式(1)
  • 时间复杂度分析经典问题——最大子序列和
  • 《Javascript数据结构和算法》笔记-「字典和散列表」
  • 2017-08-04 前端日报
  • ComponentOne 2017 V2版本正式发布
  • create-react-app做的留言板
  • Java知识点总结(JavaIO-打印流)
  • Logstash 参考指南(目录)
  • Netty+SpringBoot+FastDFS+Html5实现聊天App(六)
  • PAT A1120
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • Selenium实战教程系列(二)---元素定位
  • 从tcpdump抓包看TCP/IP协议
  • 从零搭建Koa2 Server
  • 欢迎参加第二届中国游戏开发者大会
  • 基于webpack 的 vue 多页架构
  • 计算机常识 - 收藏集 - 掘金
  • 如何在 Tornado 中实现 Middleware
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • # .NET Framework中使用命名管道进行进程间通信
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • $.ajax()方法详解
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (C语言)逆序输出字符串
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (算法二)滑动窗口
  • (图)IntelliTrace Tools 跟踪云端程序
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • ***利用Ms05002溢出找“肉鸡
  • .jks文件(JAVA KeyStore)
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net分布式压力测试工具(Beetle.DT)
  • @angular/cli项目构建--http(2)
  • @开发者,一文搞懂什么是 C# 计时器!
  • [<事务专题>]
  • [AMQP Connection 127.0.0.1:5672] An unexpected connection driver error occured
  • [bzoj 3534][Sdoi2014] 重建
  • [bzoj1324]Exca王者之剑_最小割
  • [C\C++]读入优化【技巧】
  • [C++]类和对象(中)
  • [C++从入门到精通] 14.虚函数、纯虚函数和虚析构(virtual)