`
jias_je
  • 浏览: 40560 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

转 mongodb mysql 基本语法对比

 
阅读更多

转载地址
http://blog.nosqlfan.com/html/287.html 

查询:
MySQL:
SELECT * FROM user
Mongo:
db.user.find()

MySQL:
SELECT * FROM user WHERE name = ’starlee’
Mongo:
db.user.find({‘name’ : ’starlee’})

插入:
MySQL:
INSERT INOT user (`name`, `age`) values (’starlee’,25)
Mongo:
db.user.insert({‘name’ : ’starlee’, ‘age’ : 25})

如果你想在MySQL里添加一个字段,你必须:
ALTER TABLE user….
但在MongoDB里你只需要:
db.user.insert({‘name’ : ’starlee’, ‘age’ : 25, ‘email’ : ’starlee@starlee.com’})

删除:
MySQL:
DELETE * FROM user
Mongo:
db.user.remove({})

MySQL:
DELETE FROM user WHERE age < 30
Mongo:
db.user.remove({‘age’ : {$lt : 30}})

$gt : > ; $gte : >= ; $lt : < ; $lte : <= ; $ne : !=

更新:

MySQL:
UPDATE user SET `age` = 36 WHERE `name` = ’starlee’
Mongo:
db.user.update({‘name’ : ’starlee’}, {$set : {‘age’ : 36}})

MySQL:
UPDATE user SET `age` = `age` + 3 WHERE `name` = ’starlee’
Mongo:
db.user.update({‘name’ : ’starlee’}, {$inc : {‘age’ : 3}})

MySQL:
SELECT COUNT(*) FROM user WHERE `name` = ’starlee’
Mongo:
db.user.find({‘name’ : ’starlee’}).count()

MySQL:
SELECT * FROM user limit 10,20
Mongo:
db.user.find().skip(10).limit(20)

MySQL:
SELECT * FROM user WHERE `age` IN (25, 35,45)
Mongo:
db.user.find({‘age’ : {$in : [25, 35, 45]}})

MySQL:
SELECT * FROM user ORDER BY age DESC
Mongo:
db.user.find().sort({‘age’ : -1})

MySQL:
SELECT DISTINCT(name) FROM user WHERE age > 20
Mongo:
db.user.distinct(‘name’, {‘age’: {$lt : 20}})

MySQL:
SELECT name, sum(marks) FROM user GROUP BY name
Mongo:
db.user.group({
key : {‘name’ : true},
cond: {‘name’ : ‘foo’},
reduce: function(obj,prev) { prev.msum += obj.marks; },
initial: {msum : 0}
});

MySQL:
SELECT name FROM user WHERE age < 20
Mongo:
db.user.find(‘this.age < 20′, {name : 1})

#昨天做了个mysql(jdbc) 和 mongodb(java driver) 插入10 0000条数据的对比

mysql 一次insert一条 共insert10万次 用时 1817487ms

mysql 一次批量插入 执行一次insert   用时 2358ms

mongodb  一次insert一条 共insert10万次 用时 5489ms

mongodb从表面看是insert10万次,但真正去写数据库的时候可能只用了1到3次 这和mysql的第二种方式差不多

由此来看mongodb的插入同等情况下应该比mysql快  

分享到:
评论

相关推荐

    MongoDB系列教程(五):mongo语法和mysql语法对比学习

    在本教程中,我们将对比 MongoDB 和 MySQL 的语法,帮助读者更好地理解和掌握这两种数据库系统。 1. 数据模型: - MySQL 采用的是表格形式的数据模型,由数据库、表和记录组成,具有固定的列名和数据类型。 - ...

    mongodb从基础到深入到集群部署

    从nosql到mongodb与mysql语法的对比,以及mongodb的shard及replia

    MySQL vs MongoDB

    MySQL和MongoDB是两种非常流行的数据库管理系统,它们分别代表了关系型数据库(RDBMS)和文档型数据库(NoSQL)的典型代表。在选择数据库系统时,了解它们的特性和差异至关重要。以下是对这两种数据库的详细比较: ...

    navicat 连接mysql、mongodb工具

    【Navicat 连接MySQL、MongoDB工具详解】 Navicat是一款强大的数据库管理工具,支持多种数据库系统,包括MySQL和MongoDB等。它提供了一个直观的图形界面,使得数据库的管理和开发工作变得简单易行。以下是关于...

    安装PMM Server-监控mongodb mysql.md

    Percona Monitoring and Management (PMM)是一款开源的用于管理和监控MySQL和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来。 PMM提供了对MyISAM、InnoDB、TokuDB和PXC/...

    MongoDB与MySQL的操作对比表及区别介绍

    MongoDB和MySQL是两种广泛应用的数据库系统,但它们在数据模型、操作方式和适用场景上存在显著差异。MySQL是基于ACID(原子性、一致性、隔离性和持久性)原则的关系型数据库,支持标准的SQL查询语言,而MongoDB是非...

    mongodb与mysql命令详细对比

    MongoDB和MySQL是两种不同类型的数据库系统,它们在数据存储、查询语法以及管理方式上有显著差异。MongoDB是一种NoSQL数据库,强调灵活性和高性能,而MySQL则是传统的SQL关系型数据库,提供严格的结构化数据处理。 ...

    MongoDB常用语法/Mongodb的基本使用

    在本文中,我们将深入探讨MongoDB的一些基本使用和常见操作。 1、创建、查询数据库 创建数据库非常简单,只需使用`use`命令指定数据库名称。如果数据库不存在,MongoDB会自动创建。例如,`use myDatabase`将创建或...

    Go操作MySql Memache Mongodb

    本主题将探讨如何在Go环境中操作MySQL、Memcached和MongoDB这三种不同的数据库系统,以便于理解如何利用Go进行数据存储和检索。 首先,让我们从MySQL开始。MySQL是一种关系型数据库管理系统(RDBMS),在Web应用中...

    MongoDB和Mysql常用增删改查语句

    ### MongoDB和MySQL常用增删改查语句 #### MongoDB 常用操作 ...通过上述示例,我们可以看到MySQL的基本操作及其语法格式。无论是MongoDB还是MySQL,掌握这些基本的操作都是非常重要的。希望以上内容能对你有所帮助。

    mysql2mongoDB:mysql2mongoDB-将您的Mysql数据迁移到MongoDB

    - 谨慎处理索引和查询优化,因为MongoDB的查询语法和MySQL有很大区别。 ### 总结 `mysql2mongoDB`提供了一个便捷的方法,帮助用户从传统的SQL世界过渡到NoSQL的MongoDB。通过了解其工作原理和使用方法,你可以更...

    MongoDB与mysql对比

    什么是mongodb ...MongoDB 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象 的查 询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建 立索 引。它是

    Mongodb语法使用说明(含详细示例)

    然而,对于习惯了传统关系型数据库(如MySQL)的开发者而言,MongoDB的使用方式可能会显得有些不同。幸运的是,MongoDB提供了一系列工具和方法,允许用户以接近SQL的方式进行操作。 #### 二、MongoDB基础介绍 ...

    tp6+mongodb.zip

    此外,还需要安装`topthink/think-mongo`这个扩展库,它提供了TP6与MongoDB的适配器,使得我们可以像操作MySQL一样操作MongoDB。 在整合过程中,可能会遇到的一个问题是原生MongoDB PHP库与TP6的ORM机制不完全兼容...

    MYSQL学习资料

    mysql与MongoDB语法对比 mysql分表的3种方法 MySQL数据库扩展小记 mysql架构方案 MySQL水平分区表实际操作总结 Mysql水平分表 mysql水平分表和垂直分表和数据库分区 sysbench mysql 坚持不懈 sysbench安装和使用 ...

    Mysql,Mongodb,Redis对比

    MySQL、MongoDB和Redis是三种广泛应用的数据库系统,它们各自具有独特的特性和适用场景。下面是对这三种数据库的详细对比: MySQL: 1. **多语言支持**:MySQL为多种编程语言如Java、Python、PHP、C++等提供了API,...

    mongodb客户端

    在这个场景中,我们讨论的是一个特定的MongoDB客户端,它允许用户从MySQL数据库直接导入数据。 MongoDB客户端工具为开发人员和数据库管理员提供了多种功能,包括数据可视化、文档编辑、查询构建、性能监控等。例如...

Global site tag (gtag.js) - Google Analytics