(window系统,在cmd命令提示符中使用)

一、数据库使用

管理mongodb数据库:mongo,连接本地数据库,或mongo 127.0.0.1:27017,连接其他服务器:mongo  ip:端口号

清屏:cls

查看所有数据库:show dbs

二、创建数据库

use student

如果想要成功创建数据库,那必须插入一个数据。数据库不能插入数据,只能往集合插入数据。

db.user.insert({"name":"zhangsan"})

db.user 系统发现user是一个陌生的集合,所以就自动创建了集合。

显示当前数据库所有集合

show collections

删除集合

db.user.drop()

删除数据库

db.dropDatabase()

三、增

db.user.insert({"name":"zhangsan"})

db.集合名.insert({"name":"zhangsan"})

四、删

db.user.remove({"name":"zhangsan"})

db.集合名.remove({条件})

删除所有符合条件

db.user.remove({"name":"zhangsan"},{justOne:true})

删除符合条件的第一条

五、改

db.user.update({"name":"zhangsan"},{$set{"age":16}})

db.集合名.update({条件},{$set{更新的字段值}})

更新符合条件的第一条数据

db.user.update({"name":"zhangsan"},{$set{"age":16}},{multi:true})

更新符合条件的所有数据

db.student.update({"name":"小明"},{"name":"大明", "age":16})

注意,不加$set关键字,是完整替换,即把符合name为小明的数据替换为{"name":"大明", "age":16}

db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true)
相当于:update users set age = age + 50 where name = ‘Lisi’

db.users.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true)
相当于:update users set age = age + 50, name = ‘hoho’ where name = ‘Lisi’

六、查

db.user.find()

查询所有数据

db.user.distinct("name")

查询所有数据去掉name重复的数据

db.user.find({"age":22})

查询age=22的数据

db.user.find({age:{$gt:22}})

查询age>22的数据

db.user.find({age:{$gte:22}})

查询age>=22的数据

db.user.find({age:{$lt:22}})

查询age<22的数据

db.user.find({age:{$lte:22}})

查询age<=22的数据

db.user.find({age:{$gte:23,$lte:26}})

查询23<=age<=26的数据

db.user.find({name:/mongo/})

模糊查询,查询name中包含mongo的数据

db.user.find({name:/^mongo/})

查询name以mongo开头的数据

db.user.find({},{name:1,age:1})

查询指定列name,age的数据,当然 name 也可以用 true 或 false,当用 ture 的情况下和name:1 效果一样,如果用 false 就
是排除 name,显示 name 以外的列信息。

dn.user.find({age:{$gt:25}},{name:1,age:1})

查询符合条件age>25指定列name、age数据

db.user.find().sort({age:1})

升序,按照age排序

db.user.find().sort({age:-1})

降序,按照age排序

db.user.find({name: 'zhangsan', age: 22});

查询 name = zhangsan, age = 22 的数据

db.user.find({$or: [{age: 22}, {age: 25}]}); 

or查询,查询age=22或age=25的数据

db.user.find().limit(5)

查询前5条数据

db.user,find().skip(10)

查询10条以后的数据

db.user.find().skip(5).limit(10)

查询5-10之间的数据,可用于分页,skip是第几页*pagesize,limit是pagesize

db.user.findOne()

查询第一条数据,相当于db.user.find().limit(1)

db.user.find({age:{$gte:25}}).count()

查询age>=25的数据的条数

db.users.find().skip(5).limit(10).count(true)

如果要返回限制之后的记录数量,要使用 count(true)或者 count(非 0)

如有错,欢迎指出!!

MongoDB学习day02--数据库增删改查的更多相关文章

  1. 数据库学习之数据库增删改查(另外解决Mysql在linux下不能插入中文的问题)(二)

    数据库增删改查 增加 首先我们创建一个数据库user,然后创建一张表employee create table employee( id int primary key auto_increment, ...

  2. MongoDB学习-->命令行增删改查&JAVA驱动操作Mongodb

    MongoDB 是一个基于分布式文件存储的数据库. 由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关 ...

  3. MongoDB学习笔记,基础+增删改查+索引+聚合...

    一 基础了解 对应关系 -> https://docs.mongodb.com/manual/reference/sql-comparison/ database -> database ...

  4. MongoDB学习笔记—03 增删改查操作

    MongoDB的CURD操作分别通过函数insert().update().find().remove()进行 MongoDB文档新增与删除 MongoDB中关于文档的新增与删除比较简单.主要通过in ...

  5. 2. MongoDB基本操作 —— 用Mongo.exe操作数据库增删改查

    一.开篇 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(collection).文档对象 ...

  6. mongodb 数据库 增删改查

    mongodb    数据库      增删改查 增: // 引入express 模块 var express = require('express'); // 路由var router = expr ...

  7. Android(java)学习笔记193:利用谷歌API对数据库增删改查(推荐使用)

    接下来我们通过项目案例来介绍:这个利用谷歌API对数据库增删改查 1.首先项目图: 2.这里的布局文件activity_main.xml: <LinearLayout xmlns:android ...

  8. Android(java)学习笔记136:利用谷歌API对数据库增删改查(推荐使用)

    接下来我们通过项目案例来介绍:这个利用谷歌API对数据库增删改查 1. 首先项目图: 2. 这里的布局文件activity_main.xml: <LinearLayout xmlns:andro ...

  9. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  10. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

随机推荐

  1. CF599B Spongebob and Joke

    思路: 模拟,注意特判. 实现: #include <iostream> #include <cstdio> using namespace std; ], x[], y[], ...

  2. 2017-11-29 HTML5样式、链接和表格

    HTML5样式.链接和表格HTML5列表<ol> 有序列表<ul> 无序列表<li> 列表项 <dl> 列表<dt> 列表项<dd&g ...

  3. .NET 使用 Highcharts生成扇形图 柱形图

    1.首先新建一个.NET网站,如图所示: 2.引用所需要的js类库,如下图 highcharts.js可以在网上搜索就可以找到下载了. 3.在Default.aspx页面引用js 4.在 body 下 ...

  4. Android Studio中找出不再使用的资源

    顶部Analyze菜单中选择Run Inspection by Name 在弹出的输入框中输入unused resources

  5. Prim算法以及Kruskal算法

    Prim算法主要用于计算最小生成树.算法在选取最小路径的时候需要优化,算法思路:从某个顶点开始,假设v0,此时v0属于最小生成树结点中的一个元素,该集合假设V,剩下的点待选择的点为U,然后找寻V中的点 ...

  6. Android 更新方案实现

    需求说明 为了保证自己 APP 的新版本使用率,现在有很多已有的“软件更新”框架供各位使用,本文的主要内容是如何自己动手来实现软件的后台下载,更新. 下面详细说明下软件更新的逻辑,流程图如下: 每步详 ...

  7. 到T-SQL DML 三级的阶梯:在SQL server中实现关系模型

    作者: Gregory Larsen, 2017/08/02 (第一次出版: 2011/11/09) 翻译:谢雪妮,许雅莉,赖慧芳,刘琼滨 译文: 系列 该文章是阶梯系列的一部分:T-SQL DML的 ...

  8. 手机信号强度单位:dBm 和 asu

    介绍 首先明确:dBm 和 asu 是两个独立的单位,它们的换算关系不唯一. 在 2G 网络下:dBm = -113+2*asu在 4G 网络下:dBm = -140+asu dBm 和 asu 都用 ...

  9. sysbench下载安装

    涉及到sysbench源码的配置和编译,首先确认系统安装了gcc gcc-c++编译器:确认安装了autoconf .automake.libtool等:[root@PC download]# rpm ...

  10. [python] 时间序列分析之ARIMA

    1 时间序列与时间序列分析 在生产和科学研究中,对某一个或者一组变量  进行观察测量,将在一系列时刻  所得到的离散数字组成的序列集合,称之为时间序列. 时间序列分析是根据系统观察得到的时间序列数据, ...