查询:

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})

发现很多人在搜MongoDB循环插入数据,下面把MongoDB循环插入数据的方法添加在下面:

for(var i=0;i<100;i++)db.test.insert({uid:i,uname:’nosqlfan’+i});

上面一次性插入一百条数据,大概结构如下:

{ “_id” : ObjectId(“4c876e519e86023a30dde6b8″), “uid” : 55, “uname” : “nosqlfan55″ }

{ “_id” : ObjectId(“4c876e519e86023a30dde6b9″), “uid” : 56, “uname” : “nosqlfan56″ }

{ “_id” : ObjectId(“4c876e519e86023a30dde6ba”), “uid” : 57, “uname” : “nosqlfan57″ }

{ “_id” : ObjectId(“4c876e519e86023a30dde6bb”), “uid” : 58, “uname” : “nosqlfan58″ }

{ “_id” : ObjectId(“4c876e519e86023a30dde6bc”), “uid” : 59, “uname” : “nosqlfan59″ }

{ “_id” : ObjectId(“4c876e519e86023a30dde6bd”), “uid” : 60, “uname” : “nosqlfan60″ }

简易对照表

SQL Statement                                                  Mongo Query Language Statement

CREATE TABLE USERS (a Number, b Number)         implicit; can be done explicitly

INSERT INTO USERS VALUES(1,1)                             db.users.insert({a:1,b:1})

SELECT a,b FROM users                                           db.users.find({}, {a:1,b:1})

SELECT * FROM users                                              db.users.find()

SELECT * FROM users WHERE age=33                      db.users.find({age:33})

SELECT a,b FROM users WHERE age=33                   db.users.find({age:33}, {a:1,b:1})

SELECT * FROM users WHERE age=33 ORDER BY name                db.users.find({age:33}).sort({name:1})

SELECT * FROM users WHERE age>33                     db.users.find({'age':{$gt:33}})})

SELECT * FROM users WHERE age<33                     db.users.find({'age':{$lt:33}})})

SELECT * FROM users WHERE name LIKE "%Joe%"                                   db.users.find({name:/Joe/})

SELECT * FROM users WHERE name LIKE "Joe%"                               db.users.find({name:/^Joe/})

SELECT * FROM users WHERE age>33 AND age<=40                                   db.users.find({'age':{$gt:33,$lte:40}})})

SELECT * FROM users ORDER BY name DESC                                   db.users.find().sort({name:-1})

CREATE INDEX myindexname ON users(name)                                   db.users.ensureIndex({name:1})

CREATE INDEX myindexname ON users(name,ts DESC)                                   db.users.ensureIndex({name:1,ts:-1})

SELECT * FROM users WHERE a=1 and b='q'                                   db.users.find({a:1,b:'q'})

SELECT * FROM users LIMIT 10 SKIP 20                                   db.users.find().limit(10).skip(20)

SELECT * FROM users WHERE a=1 or b=2                          db.users.find( { $or : [ { a : 1 } , { b : 2 } ] } )

SELECT * FROM users LIMIT 1                                          db.users.findOne()

EXPLAIN SELECT * FROM users WHERE z=3                                   db.users.find({z:3}).explain()

SELECT DISTINCT last_name FROM users                                   db.users.distinct('last_name')

SELECT COUNT(*y) FROM users                                            db.users.count()

SELECT COUNT(*y) FROM users where AGE > 30                             db.users.find({age: {'$gt': 30}}).count()

SELECT COUNT(AGE) from users                                       db.users.find({age: {'$exists': true}}).count()

UPDATE users SET a=1 WHERE b='q'                                   db.users.update({b:'q'}, {$set:{a:1}}, false, true)

UPDATE users SET a=a+2 WHERE b='q'                                   db.users.update({b:'q'}, {$inc:{a:2}}, false, true)

DELETE FROM users WHERE z="abc"                                    db.users.remove({z:'abc'});

FROM:http://yjc2020.iteye.com/blog/1128056

mongodb mysql 写_MySQL和MongoDB语句的写法对照相关推荐

  1. mongodb mysql读写_MySQL vs MongoDB 1000读取

    我对MongoDb感到非常兴奋,并且最近对其进行了测试.我在MySQL中有一个名为posts的表,其中大约2000万条记录仅在名为" id"的字段上建立索引. 我想将速度与Mong ...

  2. mongodb mysql 写_MongoDB与MySQL关于写确认的异同

    云妹导读: 所谓写确认,是指用户将数据写入数据库之后,数据库告知用户写入成功的一个概念.根据数据库的特点和配置,可以在不同的写入程度上,返回给用户,而这其中,就涉及到了不同的性能.数据安全等级以及数据 ...

  3. mysql mongodb 集群_MySQL与MongoDB

    MySQL与MongoDB 声明: MySQL与MongoDB都是开源的常用数据库, 但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库. ...

  4. 烈焰mysql数据库_mysql与MongoDB区别

    MySQL 关系型数据库. 在不同的引擎上有不同 的存储方式. 查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高. 开源数据库的份额在不断增加,mysql的份额页在持续增长. 缺点就是在 ...

  5. 跨mysql和mongodb查询工具_MySQL与MongoDB查询互转

    Mysql与MongoDB查询互转 mongo查询严格要求数据格式! 1.只想查出某些数据,不想全部数据都查出来 mysql:select name from user; mongo: db.user ...

  6. mysql数据库insert语句怎么写_MySQL数据库Insert语句7种写法

    简介 很多开发人员工作了几年之后,都会自嘲,自己啥技术都没学到,就会CRUD,可是我要说的是,CRUD你真的都会吗,你在MySQL数据库中,会几种insert语句写法呢.在这里我会7种写法,下面我就来 ...

  7. mysql多表查询sql语句怎么写_MySQL基本SQL语句之单表查询、多表查询和子查询

    一.简单查询: 基本语法: SELECT * FROM tb_name;查询全部 SELECT field1,field2 FROM tb_name; 投影 SELECT [DISTINCT] * F ...

  8. php mysql循环语句怎么写_mysql数据库循环语句该怎么写???

    数据库结构 num date 2 2013-07-24 5 2013-07-25 8 2013-08-03 10 2013-08-22 4 2013-09-10 最后要在页面中输出为一个行行统计格式 ...

  9. ci mysql 事务_mysql建库语句及innodb事务分析

    mysql中建立数据库语句,以后就按这个标准来.在建库的时候就指定字符集,以后表的话,继续库的字符集就不用那么麻烦了 CREATE DATABASE `testpdo` DEFAULT CHARACT ...

最新文章

  1. R语言广义线性模型泊松回归(Poisson Regression)模型
  2. java中文件名和类名之间的关系
  3. redis zse如何取值_你真的懂redis的數據結構了嗎?redis內部數據結構和外部數據結構揭秘...
  4. LeetCode题组:第9题-回文数
  5. quilleditor 字体大小设置_vue-quill-editor如何设置字体默认大小?
  6. Html5---可编辑的Contenteditable
  7. QC与IE8 、WINDOWS 7 兼容问题的解决方案
  8. 数据结构与算法系列——从菜鸟到入门
  9. [语言]Webassembly
  10. oracle u4e00 u9fa5,Oracle 判断汉字 [\u4e00-\u9fa5]
  11. pthread库进行多线程编程 - 组件工厂 - C++博客
  12. matlab ifft频率分辨率,matlab中关于FFT的使用(理解频率分辨率、补零问题)
  13. Delphi2010 Dll 函数列表查看
  14. 管家婆 mysql_管家婆软件恢复账套数据图解-通过数据库源文件
  15. android wifi信号检测
  16. 64位计算机比32快多少,32位的系统比64位还要快? 看完这些就懂了
  17. 官网Tomcat下载方法
  18. 关于穿透冰点还原等还原软件的方法
  19. 我为什么从外包公司离职了?
  20. 轻量级微信小说小程序源码+UI不错/很火的

热门文章

  1. Java LinkedList boolean addAll(int index,Collection c)方法,带有示例
  2. math.atan_Python中带有示例的math.atan()方法
  3. 游标迭代器(过滤器)——Scan
  4. 自由职业的前半年,我是如何度过的?
  5. linux中如何改IP
  6. idea连接sqlserver及数据库操作
  7. mysql 需要什么硬件配置_如何来给指定的硬件环境配置一份比较合理的MySQL配置文件-爱可生...
  8. 关于shared_from_this的转换
  9. android xml 画下划线,android – strings.xml:如何从标记前面的空格中删除下划线?...
  10. php什么程度算学会,十天学会PHP - 序1,学会的标准是什么?(20180820-1)