mongoDB應用(sql語句)

查詢:
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})


?

if you want add a column `email` on MySQL,you must :

ALTER TABLE user….

But in Mongo,you can just:

db.user.insert({'name' : 'starlee', 'age' : 25, 'email' : '[email protected]'})


?

刪除:

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

?

==============Split=======================

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章