MongoDB学习day02--数据库增删改查
(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--数据库增删改查的更多相关文章
- 数据库学习之数据库增删改查(另外解决Mysql在linux下不能插入中文的问题)(二)
数据库增删改查 增加 首先我们创建一个数据库user,然后创建一张表employee create table employee( id int primary key auto_increment, ...
- MongoDB学习-->命令行增删改查&JAVA驱动操作Mongodb
MongoDB 是一个基于分布式文件存储的数据库. 由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关 ...
- MongoDB学习笔记,基础+增删改查+索引+聚合...
一 基础了解 对应关系 -> https://docs.mongodb.com/manual/reference/sql-comparison/ database -> database ...
- MongoDB学习笔记—03 增删改查操作
MongoDB的CURD操作分别通过函数insert().update().find().remove()进行 MongoDB文档新增与删除 MongoDB中关于文档的新增与删除比较简单.主要通过in ...
- 2. MongoDB基本操作 —— 用Mongo.exe操作数据库增删改查
一.开篇 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(collection).文档对象 ...
- mongodb 数据库 增删改查
mongodb 数据库 增删改查 增: // 引入express 模块 var express = require('express'); // 路由var router = expr ...
- Android(java)学习笔记193:利用谷歌API对数据库增删改查(推荐使用)
接下来我们通过项目案例来介绍:这个利用谷歌API对数据库增删改查 1.首先项目图: 2.这里的布局文件activity_main.xml: <LinearLayout xmlns:android ...
- Android(java)学习笔记136:利用谷歌API对数据库增删改查(推荐使用)
接下来我们通过项目案例来介绍:这个利用谷歌API对数据库增删改查 1. 首先项目图: 2. 这里的布局文件activity_main.xml: <LinearLayout xmlns:andro ...
- ASP.NET从零开始学习EF的增删改查
ASP.NET从零开始学习EF的增删改查 最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...
- (转)SQLite数据库增删改查操作
原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...
随机推荐
- Spring------IOC&DI
一.Spring? Spring兴起:2003年,由Rod Johnson创建.总的来说,Spring Framwork从它诞生至今都一直为人所称道,它的伟大之处自此可见一斑. 核心:IOC& ...
- Java:核心概念j积累(一)
1. 抽象 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象包括两个方面,一是过 ...
- DLL线程中坑爹的Synchronize?
1, 缘起 某次开发语音对讲windows程序,采用delphi语言,及delphix的TDXSound控件. DXSound提供了TSoundCaptureStream类,可以实现指定频率.位数.声 ...
- vba,excel,网址提取名字与链接url
'宏操作 Sub 复制超级链接() '这里控制读取A列的第1到10行,你根据自已的要求修改一下起始和结束行数 ).Hyperlinks.Count > ).Value = Cells(a, ). ...
- 迅为IMX6UL开发板
迅为iMX6UL开发板采用核心板加底板形式,核心板使用邮票孔方式连接,牢固耐用.处理器ARM®Cortex®-A7内核,运行速度高达528 MHz.512MDDR内存,8G EMMC存储,板截双网口, ...
- fast rcnn,faster rcnn使用cudann加速问题
之前在fast rcnn,faster rcnn编译过程中USE_CUDNN := 1这一项一直是注释掉的(即不使用cudnn加速),编译会报错: 之所以会这样,是因为fast rcnn,faster ...
- 安装Subversion1.82(SVN)
安装Subversion1.82(SVN)插件 简介 :SVN是团队开发的代码管理工具,它使我们得以进行多人在同一平台之下的团队开发. 解决问题:Eclipse下的的SVN插件安装. 学到 ...
- .net+EF+mvc通过EasyUI的DataGrid实现增删改查
@{ Layout = null;} <!DOCTYPE html> <html><head> <meta name="viewport ...
- vue开发 - 根据vue-router的meta动态设置html里标签的内容
路由文件 :router/index.js import Vue from 'vue'import Router from 'vue-router'import index '@/view/index ...
- Spring boot 控制台打印sql
在application.ym中加入: logging: level: com.wechat.cwbt.dao : debug 发现无效 在log4j.properties中加入: log4j.log ...