mongdb数据库的操作
一、数据库使用
1.使用mongodb服务,必须先开启服务,开启服务使用 mongod --dbpath D:mongdb (D:mongdb 自己所创建数据库的路径, 在cmd窗口中输入)
2.管理mongodb数据库,mongo (必须新建一个新的cmd窗口输入,之前打开的cmd窗口不能关闭)
** cls 清屏命令
二、创建数据库
1.使用数据库、创建数据库
use student 如果真的想把这个数据库创建成功,那么必须插入一个数据 数据库中不能直接插入数据,只能往集合(collections)中插入数据,不需要专门创建集合,只需要写点语法插入数据就会创建集合
db.student.insert({"name":"xiaoming"}); //插入数据
show collections 就能看到刚才创建的集合(student)
2.删除当前所在的数据库
db.dropDatabase();
删除集合语法 db.collection_name.drop
db.student.drop()
三、插入数据
db.student.insert({"name":"xiaoming"}); //插入数据
四、查找数据
1.查询所有记录
db.student.find()
2.查询去掉后的当前聚集集合中的某列的重复数据
db.student.disnct("name") //会过滤掉相同的数据,只显示一条
3.查询age="25"的记录
db.sutdent.find({"age":"25"}) //只查询出一条数据
4.查询age>22的记录
db.student.find({age:{$gt:22}})
5.查询age<22的记录
db.student.find({age:{$lt:22}})
6.查询age>=25的记录
db.student.find({"age":{$gte:25}})
7.查询age<=25的记录
db.student.find({"age":{$lte:25}})
8.查询age>=23 并且age<=26
db.student.find({age:{$gte:23,$lte:26}})
9.查询name中包含moongo的数据 模糊查询用于搜索
db.student.find({name:/mongo/})
10.查询name中以mongo开头的
db.student.find({name:/^mongo/})
11.查询指定列name、age数据
db.sutdent.find({},{name:1.age:1})
12.查询指定列name、age数据,age>25
db.student.fiind({age:{$gt:25}},{name:1,age:1})
13.按照年龄排序 1升序 -1降序
db.student.find().sort({age:1}) 按年龄升序排序
db.studnet.find().sort({age:-1}) 按年龄降序排序
14.查询name=zhangsan,age=22的数据
db.student.find({'name':'zhangsan','age':'22'})
15.查询前5条数据
db.student.find().limit(5)
16.查询10条以后的数据
db.student.find().skip(10);
17.查询在5-10条之间的数据
db.student.find().limit(10).skip(5); //可用于分页 ,limit是pageSize,skip是第几页 *(乘以)pageSize
18. or与查询
db.student.find({$or:[{age:22},{age:25}]}) 查询age22或者25的数据
19.查询第一条数据 findOne
db.student.findOne()
20.查询某个结果集的记录条数
db.student.find({age:{$gte:25}}).count() 查询age大于25的数据
如果要返回限制之后的记录数量,要使用 count(true)或者 count(非 0) db.users.find().skip(10).limit(5).count(true);
四、修改数据
1.db.student.update({"name":"小明"},{$set:{"age":16}}); 查找名字叫做小明的,把年龄更改为 16 岁:
2. db.student.update({"score.shuxue":70},{$set:{"age":33}}); 查找数学成绩是 70,把年龄更改为 33 岁:
3. db.student.update({"sex":"男"},{$set:{"age":33}},{multi: true}); 更改所有匹配项目:"
4. db.student.update({"name":"小明"},{"name":"大明","age":16}); 完整替换,不出现$set 关键字了
5.db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true); 相当于:update users set age = age + 50 where name = ‘Lisi’;
6.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.collectionsNames.remove( { "borough": "Manhattan" } ) 删除集合
db.users.remove({age: 132});
mongdb数据库的操作的更多相关文章
- Linux 下Mongdb数据库
一.安装mongdb 1.创建安装目录 # mkdir /data/local # mkdir /data/local/mongodbdata 2.解压安装包 # tar -xvf /software ...
- python代理池的构建4——mongdb数据库的增删改查
上一篇博客地址:python代理池的构建3--爬取代理ip 一.mongdb数据库的增删改查(Mongo_pool.py) #-*-coding:utf-8-*- ''' 实现代理池的数据库模块 ●作 ...
- php模拟数据库常用操作效果
test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...
- Android-Sqlite数据库的操作
Sqlite数据库的简单操作: 设置增删改查的按钮,xml界面布局设置 <?xml version="1.0" encoding="utf-8"?> ...
- (四)SQL入门 数据库的操作与事务管理
数据库的操作,有三个最基本的语句,insert插入,update修改,delete删除. 不同的数据库厂商的实现可能不同,所以就不说具体的语法怎么写的了.说语法也没有意义,到处都可以复制粘贴,记得听某 ...
- Laravel框架数据库CURD操作、连贯操作使用方法
Laravel框架数据库CURD操作.连贯如何来操作了这个操作性是非常的方便简单了我们在这里来为各位介绍一篇相关的教程,具体的细节步骤如下文介绍. Laravel是一套简洁.优雅的PHP Web开 ...
- zabbix数据库mariadb从服务器迁移到云mysql数据库的操作
zabbix数据库mariadb从本机迁移到云mysql数据库的操作 1.将zabbix数据库导出,并导入到云数据库中 由于数据库较大,如果直接使用shell会话中断会导致数据库导出或者导入失败,使用 ...
- 使用my exclipse对数据库进行操作(4)
四.删除 public class class4 { public static void main(String[] args) { // TODO Auto-generated method st ...
- 从C#到Objective-C,循序渐进学习苹果开发(7)--使用FMDB对Sqlite数据库进行操作
本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.本篇主要开始介绍基于XCod ...
随机推荐
- Android 布局之GridLayout(转载)
转载:http://www.cnblogs.com/skywang12345/p/3154150.html 1 GridLayout简介 GridLayout是Android4.0新提供的网格矩阵形式 ...
- Eclipse中,Open Type(Ctrl+Shift+T)失效后做法。
好几天ctrl shift T都不好用了,一直认为是工程的问题,没太在意,反正ctrl shift R也可也,今天看同事的好用,于是到网上查了一下解决的方法,刚才试了一下,应该是这个问题,明天就去公司 ...
- bzoj 4472: [Jsoi2015]salesman【树形dp+贪心】
一个点,设f[u]为要取最大值显然是前最大停留次数-1个儿子的正数f和,排个序贪心即可 判重的话就是看没选的里面是否有和选了的里面f值相同的,有的话就是一.注意在选的时候要把加进f的儿子的g合并上去 ...
- video.py OpenCv例程阅读
#!/usr/bin/env python ''' Video capture sample. Sample shows how VideoCapture class can be used to a ...
- HTML5中div,article,section的区别
最近正在学习html5,刚接触html5,感觉有点不适应,因为有一些标签改变了,特别是div, section article这三个标签,查了一些资料,也试着用html5和css3布局网页,稍微有点头 ...
- 449B
B. Chtholly's request time limit per test 2 seconds memory limit per test 256 megabytes input standa ...
- ie下,php HTTP_REFERER获取失败的整理
HTTP_REFERER有效的情况1.以iframe 形式调用地址2.以window.open调用,打开新页面window.open(url);3.使用window.location.replace在 ...
- python之文件的读写
读 r 读写模式 r+ 如果打开文件时没有指定模式,默认只读,如果使用r或r+,文件不存在时会报错 写 w 写读模式 w+ w模式会清空原有的文件内容 追加 a 追加读 ...
- AtCoder Regular Contest 074 F - Lotus Leaves
题目传送门:https://arc074.contest.atcoder.jp/tasks/arc074_d 题目大意: 给定一个\(H×W\)的网格图,o是可以踩踏的点,.是不可踩踏的点. 现有一人 ...
- 模拟 百度之星资格赛 1003 IP聚合
题目传送门 /* 模拟水题,排序后找出重复的ip就可以了 */ #include <cstdio> #include <iostream> #include <algor ...