Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >MongoDB学习笔记

MongoDB学习笔记

作者头像
ihoey
发布于 2018-10-31 08:29:15
发布于 2018-10-31 08:29:15
4730
举报
文章被收录于专栏:梦魇小栈梦魇小栈

本篇文章介绍学习MongoDB的一些常用命令,希望能帮助大家.

常用操作

  • Help查看命令提示
    • db.help();
    • db.yourColl.help();
    • db.youColl.find().help();
  • 切换/创建数据库
    • use yourDB; 当创建一个集合(table)的时候会自动创建当前数据库
  • 查询所有数据库
    • show dbs;
  • 删除当前使用数据库
    • db.dropDatabase();
  • 从指定主机上克隆数据库
    • 从指定主机上克隆数据库
  • 从指定的机器上复制指定数据库数据到某个数据库
    • db.copyDatabase("mydb", "temp", "127.0.0.1");将本机的mydb的数据复制到temp数据库中
  • 修复当前数据库
    • db.repairDatabase();
  • 查看当前使用的数据库
    • db.getName();
  • 显示当前db状态
    • db.stats();
  • 当前db版本
    • db.version();
  • 查看当前db的链接机器地址
    • db.getMongo();

Collection聚集集合操作

  • 创建一个聚集集合(table
    • db.createCollection(“collName”, {size: 20, capped: 5, max: 100});
  • 得到指定名称的聚集集合(table
    • db.getCollection("account");
  • 得到当前db的所有聚集集合
    • db.getCollectionNames();
  • 显示当前db所有聚集索引的状态
    • db.printCollectionStats();

用户相关操作

  • 添加一个用户
    • db.addUser("name");
    • db.addUser("userName", "pwd123", true); 添加用户、设置密码、是否只读
  • 数据库认证、安全模式
    • db.auth("userName", "123123");
  • 显示当前所有用户
    • show users;
  • 删除用户
    • db.removeUser("userName");

聚集集合查询

  • 查询所有记录
    • db.userInfo.find(); 相当于:select* from userInfo;默认每页显示20条记录,当显示不下的情况下,可以用it迭代命令查询下一页数据。注意:键入it命令不能带“;”但是你可以设置每页显示数据的大小,用DBQuery.shellBatchSize= 50;这样每页就显示50条记录了。
  • 查询去掉后的当前聚集集合中的某列的重复数据
    • db.userInfo.distinct("name");会过滤掉name中的相同数据,相当于:select distict name from userInfo;
  • 查询age = 22的记录
    • db.userInfo.find({"age": 22}); 相当于:select * from userInfo where age = 22;
  • 查询age > 22的记录
    • db.userInfo.find({age: {$gt: 22}});
  • 查询age < 22的记录
    • db.userInfo.find({age: {$lt: 22}});
  • 查询age >= 25的记录
    • db.userInfo.find({age: {$gte: 25}});
  • 查询age >= 23 并且 age <= 26
    • db.userInfo.find({age: {$gte: 23, $lte: 26}});
  • 查询name中包含 mongo的数据
    • db.userInfo.find({name: /mongo/});
  • 查询name中以mongo开头的
    • db.userInfo.find({name: /^mongo/});
  • 查询指定列nameage数据
    • db.userInfo.find({}, {name: 1, age: 1});当然name也可以用truefalse,当用ture的情况下河name:1效果一样,如果用false就是排除name,显示name以外的列信息。
  • 查询指定列nameage数据, age > 25.
    • db.userInfo.find({age: {$gt: 25}}, {name: 1, age: 1});
  • 按照年龄排序
    • 升序:db.userInfo.find().sort({age: 1});
    • 降序:db.userInfo.find().sort({age: -1});
  • 查询name = zhangsan, age = 22的数据
    • db.userInfo.find({name: 'zhangsan', age: 22});
  • 查询前5条数据
    • db.userInfo.find().limit(5);
  • 查询10条以后的数据
    • db.userInfo.find().skip(10);
  • 查询在5-10之间的数据
    • db.userInfo.find().limit(10).skip(5);可用于分页,limit是pageSize,skip是第几页*pageSize
  • or与 查询
    • db.userInfo.find({$or: [{age: 22}, {age: 25}]});
  • 查询第一条数据
    • db.userInfo.findOne();
    • db.userInfo.find().limit(1);
  • 查询某个结果集的记录条数
    • db.userInfo.find({age: {$gte: 25}}).count();如果要返回限制之后的记录数量,要使用count(true)或者count(非0)
    • db.users.find().skip(10).limit(5).count(true);
  • 按照某列进行排序
    • db.userInfo.find({sex: {$exists: true}}).count();

索引

  • 创建索引
    • db.userInfo.ensureIndex({name: 1});
    • db.userInfo.ensureIndex({name: 1, ts: -1});
  • 查询当前聚集集合所有索引
    • db.userInfo.getIndexes();
  • 查看总索引记录大小
    • db.userInfo.totalIndexSize();
  • 读取当前集合的所有index信息
    • db.users.reIndex();
  • 删除指定索引
    • db.users.dropIndex("name_1");
  • 删除所有索引
    • db.users.dropIndexes();
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-03-272,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
mongodb基本指令
根据文章内容总结为摘要总结。
用户1141560
2017/12/26
1.6K0
Linux系统下MongoDB的简单安装与基本操作
Mongo DB ,是目前在 IT 行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备受当前 IT 从业人员的青睐。Mongo DB 很好的实现了面向对象的思想(OO 思想),在 Mongo DB 中 每一条记录都是一个 Document 对象。Mongo DB 最大的优势在于所有的数据持久操作都无需开发人员手动编写 SQL 语句,直接调用方法就可以轻松的实现 CRUD 操作。 一、下载 mongodb 前往 mongodb 官网下载页面:https://www.mongodb.org
张戈
2018/03/23
2.2K0
【原创】MongoDB之常见操作命令汇总
mongodb由 C++ 写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理。关于它的一个最简洁描述为:scalable, high-performance, open source, schema-free, document-oriented database。MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统(丰富的功能)架起一座桥梁,集两者的优势于一身。 安装及使用: 首先在Ubuntu上安装MongoDB
码神联盟
2018/04/02
1.1K0
Mongodb数据库命令端经常使用操作
http://blog.csdn.net/xiaohulunb/article/details/27828381
全栈程序员站长
2022/07/12
2K0
Docker 搭建MongoDB环境
我们还可以通过命令,查看日志,来看我们的MongoDB是否启动成功。
雷子
2021/03/15
6910
Docker 搭建MongoDB环境
MongoDB常用28条查询语句
默认每页显示20条记录,当显示不下的情况下,可以用it迭代命令查询下一页数据。注意:键入it命令不能带“;”
IT工作者
2022/07/06
1.7K0
MongoDB系列一(查询).
一、简述     MongoDB中使用find来进行查询。查询就是返回一个集合中文档的子集,子集合的范围从0个文档到整个集合。默认情况下,"_id"这个键总是被返回,即便是没有指定要返回这个键。("_id"是一个集合中每个文档的唯一标识)     查询的使用上有限制,传递给数据库的查询文档必须是常量。(当然,在你的代码里可以是正常的变量)     一个键可以有任意多个条件,但是一个键不能对应多个更新修改器。     条件语句是内层文档的键,而修改器是外层文档的键。 二、使用find或者findOne函数和查
JMCui
2018/03/21
3.6K0
MongoDB系列一(查询).
MongoDB 学习笔记(原创)
MongoDB 学习笔记 mongodb 数据库 nosql 一、数据库的基本概念及操作 SQL术语/概念MongoDB术语/概念解释/说明databasedatabase数据库tablecollection数据库表/集合rowdocument数据记录行/文档columnfield数据字段/域indexindex索引tablejoins表连接,MongoDB不支持primary keyprimary key主键,MongoDB自动将_id字段设置为主键 创建数据库 > use mydb 查看当前连接的数据
marsggbo
2018/01/23
7260
Linux下的Mongodb部署应用梳理
一、Mongodb简介  官网地址:http://www.mongodb.org/ MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能 最丰富,最像关系数据库的。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。它是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应 用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系型数据
洗尽了浮华
2018/01/22
5.1K0
Linux下的Mongodb部署应用梳理
mongodb操作(概述以及相关的命令)
http://blog.csdn.net/ljfbest/article/details/11979609
bear_fish
2018/09/20
6260
MongoDB常用命令大全,概述、备份恢复
还记得MySQL、Redis、PostgreSQL、ClickHouse常用命令及操作吗?如果忘记可以到这里重新温习:MySQL常用命令,Redis常用命令,PostgreSQL常用命令,ClickHouse常用命令,启动、关闭、连接、备份、导入导出。本文重点讲述MongoDB常用命令。
寻求出路的程序媛
2024/07/17
1.1K0
MongoDB学习整理
MongoDB 是介于关系数据库和非关系数据库之间的产品,是非关系数据库中功能最丰富,最像关系数据库的,语法类似javascript面向对象的查询语言,是一个面向集合的、模式自由的文档型数据库。
CS逍遥剑仙
2019/01/01
8920
MongoDB 操作简捷版
http://blog.csdn.net/yueguanghaidao/article/details/7483064
bear_fish
2018/09/20
1.2K0
MongoDB  操作简捷版
MongoDB第四期:SQL 与 MongoDB 映射(入门)
一、SQL与MongoDB术语概念对照 传统的关系数据库一般由数据库(database)、表(table)、记录(record)三个层次概念组成,MongoDB是由数据库(database)、集合(c
迪B哥
2017/08/04
1.3K0
MongoDB基础语句
MongoDB数据库安装地址:http://jingyan.baidu.com/article/d5c4b52bef7268da560dc5f8.html
MonroeCode
2018/01/10
9830
mongodb拾遗
查询选择器(默认前缀为db.test.) 语句 说明 备注 find() 查询全部数据 默认每200ms将数据flush到硬盘 find({id:1}) 精确查询 find({id:{$lt:5}) id小于5的全部数据 同样的还有$lte(小于等于)、$lt(小于)、$gt(大于)、$gte(大于等于) find({id:[1,2]}) 某个范围内 $nin(不在某个范围内,低效,会使索引失效)、$ne(不等于,低效,会使索引失效) find({$or:[{id:1},{id:2}]} 等同sql or
尚浩宇
2018/08/17
5340
mongodb官网下载不了, MongoDB下载、安装、配置、使用,如何下载MongoDB数据库,MongoDB入门[通俗易懂]
MongoDB 将数据存储在灵活的json文档中,这意味着可以直接得到从文档到文档的数据、结构等。
全栈程序员站长
2022/07/25
7.5K0
mongodb官网下载不了, MongoDB下载、安装、配置、使用,如何下载MongoDB数据库,MongoDB入门[通俗易懂]
MongoDB数据库常用操作
要管理数据库,必须先开启服务,开启服务使用 mongod --dbpath c:\mongodb,"c:\mongodb"为当前自己的数据库所在路径。
越陌度阡
2020/11/26
6920
SQL与mongoDB对比及映射
mongoDB是最接近与关系型数据库的开源NoSQL数据库,几乎绝大多数常用的命令或语句在SQL中都可以找到相应的对应或映射。本文主要与MySQL做了些参照,供大家参考。
Leshami
2018/08/13
8430
MongoDB 学习笔记
感谢 Karl Seguin 编写的 The Little MongoDB Book 这本 MongoDB 入门书。
柳公子
2018/09/17
1.7K0
相关推荐
mongodb基本指令
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档