基于MySQL到MongoDB简易对照表的详解
作者:yzh148448 | 2021-09-06 23:32
本篇文章是对从MySQL到MongoDB的简易对照表进行了详细的分析介绍,需要的朋友参考下
MongoDB
查询:
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
推荐阅读
-
如何解决《卡夫卡有重复的消息》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《当一个人说电脑"挂起"或冻结时会发生什么?》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《无法从http端点消耗》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《Patsy:测试数据中分类字段的新级别》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《在R中添加MinRow》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《VBA变量声明在两行上没问题但在逗号分隔时没有.编译错误?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《无法在Windows的Xampp中安装OAuth扩展》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《打印json对象中的所有路径》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《Windows10AppStore提交所需的映像是什么?》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《ReactNative:使用AtomIDE》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《redux-form-通过代码设置字段的值?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《由于com.sun.javafx.css.StyleManagerloadStylesheetUnPrivileged,JavaFx无法加载@font-face字体》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《为什么弹簧传播=所需的跨域嵌套逻辑事务》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《为什么这个字符串不会溢出缓冲区?》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《ZuulEdgeServer可以在没有Eureka/Ribbon的情况下使用》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《替换String中的变量》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《明确说明引用的向量长度类型》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《Sitecore8:更改子布局的数据源模板》经验,为你挑选了1个好方法。 ...
[详细]
-
如何解决《在Windows上设置docker时出错》经验,为你挑选了0个好方法。 ...
[详细]
-
如何解决《在SWRevealViewController上的didselecttableview上出错》经验,为你挑选了1个好方法。 ...
[详细]