1.MySQL与MongoDB的操作对比,以及区别
转自:https://www.cnblogs.com/chris-oil/p/4982490.html
MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库。它们各有各的优点,关键是看用在什么地方。所以我们所熟知的那些SQL(全称Structured Query Language)语句就不适用于MongoDB了,因为SQL语句是关系型数据库的标准语言。
作用 |
MySQL |
MongoDB |
|
|
|
服务器守护进程 |
mysqld |
mongod |
客户端工具 |
mysql |
mongo |
逻辑备份工具 |
mysqldump |
mongodump |
逻辑还原工具 |
mysql |
mongorestore |
数据导出工具 |
mysqldump |
mongoexport |
数据导入工具 |
source |
mongoimport |
|
|
|
新建用户并授权 |
grant all on *.* |
db.addUser("user","psw") |
显示库列表 |
show databases; |
show dbs |
进去库 |
use dbname; |
use dbname |
显示表列表 |
show tables; |
show collections |
查询主从状态 |
show slave status; |
rs.status |
创建库 |
create database name; |
无需单独创建,直接use进去 |
创建表 |
create table tname(id int); |
无需单独创建,直接插入数据 |
删除表 |
drop table tname; |
db.tname.drop() |
删除库 |
drop database dbname; |
首先进去该库,db.dropDatabase() |
|
|
|
插入记录 |
insert into tname(id) value(2); |
db.tname.insert({id:2}) |
删除记录 |
delete from tname where id=2; |
db.tname.remove({id:2}) |
修改/更新记录 |
update tname set id=3 |
db.tname.update({id:2}, |
|
|
|
查询所有记录 |
select * from tname; |
db.tname.find() |
查询所有列 |
select id from tname; |
db.tname.find({},{id:1}) |
条件查询 |
select * from tname where id=2; |
db.tname.find({id:2}) |
条件查询 |
select * from tname where id < 2; |
db.tname.find({id:{$lt:2}}) |
条件查询 |
select * from tname where id >=2; |
db.tname.find({id:{$gte:2}}) |
条件查询 |
select * from tname where id=2 |
db.tname.find({id:2, |
条件查询 |
select * from tname where id=2 |
db.tname.find($or:[{id:2}, |
条件查询 |
select * from tname limit 1; |
db.tname.findOne() |
|
|
|
模糊查询 |
select * from tname where name |
db.tname.find({name:/ste/}) |
模糊查询 |
select * from tname where name |
db.tname.find({name:/^ste/}) |
|
|
|
获取表记录数 |
select count(id) from tname; |
db.tname.count() |
获取有条件 |
select count(id) from tname |
db.tname.find({id:2}).count() |
查询时去掉 |
select distinct(last_name) |
db.tname.distinct('last_name') |
|
|
|
正排序查询 |
select *from tname order by id; |
db.tname.find().sort({id:1}) |
逆排序查询 |
select *from tname |
db.tname.find().sort({id:-1}) |
|
|
|
取存储路径 |
explain select * from tname |
db.tname.find({id=3}).explain() |
1.MySQL与MongoDB的操作对比,以及区别的更多相关文章
- MySQL 与 MongoDB的操作对比
MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库.它们各有各的优点,关键是看用在什么地方 ...
- MySQL与MongoDB的操作对比,以及区别
MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库.它们各有各的优点,关键是看用在什么地方 ...
- [转]MySQL与MongoDB的操作对比
MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库.它们各有各的优点,关键是看用在什么地方 ...
- MySQL与MongoDB的操作对比
MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库.它们各有各的优点,关键是看用在什么地方 ...
- MySQL与MongoDB的区别
一.MongoDB简介 什么是MongoDB ?MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB 旨 ...
- 从MySQL和MongoDB的对比,看SQL与NoSQL的较量
张家江,网易乐得高级工程师. 贵金属(注:贵金属为笔者部门业务)的行情系统提供的接口通过Redis获取数据,目前使用Redis最多只存储了大概8000条左右的分钟k的行情数据,考虑到将来可能会有更大数 ...
- MySQL和Mongodb的区别与应用场景对比
MySQL是关系型数据库 优势: 在不同的引擎上有不同 的存储方式. 查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高. 开源数据库的份额在不断增加,mysql的份额页在持续增长. 缺点 ...
- mongoDB 数据库操作
mongoDB 数据库操作 数据库命名规则 . 使用 utf8 字符,默认所有字符为 utf8 . 不能含有空格 . / \ "\0" 字符 (c++ 中会将 "\0&q ...
- MySQL、MongoDB、Redis 数据库之间的区别
NoSQL 的全称是 Not Only SQL,也可以理解非关系型的数据库,是一种新型的革命式的数据库设计方式,不过它不是为了取代传统的关系型数据库而被设计的,它们分别代表了不同的数据库设计思路. M ...
随机推荐
- [AngularJS]Chapter 3 使用AngularJS构建应用程序
本章内容提要: 如何布置AngularJS进行快速开发 开启服务器进行测试 使用Karma进行单元测试用例测试 编译压缩AngularJS进行生产 使用Batarang进行Debug 如何简化开发工作 ...
- Git-删除本地文件夹的repository(本地仓库)
安装git软件后.有些文件夹里会出现带有?的图标,右键菜单上会有"Git-Sync"或者"Git-Commit"等命令:正常的应该是"Git-Clon ...
- MVVM 中 ViewModelBase和 CommandBase
public class ViewModelBase : INotifyPropertyChanged , IDisposable { public virtual string DisplayNam ...
- windows+ubuntu双系统,在windows中访问ubuntu文件
今天被告知ubuntu磁盘空间不足,百度得知可以通过autoremove命令清理,然而,,再也进不去ubuntu系统了,具体表现为第一次选择ubuntu之后一直是空白紫屏,如果强制关机再开机后选择ub ...
- JAVA设计模式之【命令模式】
命令模式 为了降低耦合度,将请求的发送者和接收者解耦 发送请求的对象只需要哦知道如何发送请求,而不必知道如何完成请求 对请求排队 记录请求日志 支持撤销操作 核心在于引入命令类 角色 抽象命令类Com ...
- Oracle 数据泵使用详解--精华版
数据泵使用EXPDP和IMPDP时应该注意的事项: EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用. EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端 ...
- div在父集高度未知的情况下垂直居中的方法
父集高度未知,子集高度已知: 可以使用弹性盒来解决: justify-content属性定义了项目在主轴上的对齐方式. align-items属性定义项目在交叉轴上如何对齐.
- [JZOJ 100026] [NOIP2017提高A组模拟7.7] 图 解题报告 (倍增)
题目链接: http://172.16.0.132/senior/#main/show/100026 题目: 有一个$n$个点$n$条边的有向图,每条边为$<i,f(i),w(i)>$,意 ...
- BZOJ 2301 莫比乌斯函数+分块
思路: 同BZOJ1101 就是加个容斥 - http://blog.csdn.net/qq_31785871/article/details/54340241 //By SiriusRen #inc ...
- POJ 2386 Lake Counting【BFS】
题意:给出一个矩形,问有多少块连通的W 当找到W的时候,进行广搜,然后将搜过的W变成点,直到不能再搜,进行下一次广搜,最后搜的次数即为水塘的个数 看的PPT里面讲的是种子填充法. 种子填充算法: 从多 ...