作用 | SQL | mongdb |
所有记录 | SELECT * FROM users | db.users.find() |
age=33的记录 | 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 name LIKE "Joe%" | db.users.find({name:/^Joe/}) |
忽略、限制 | SELECT * FROM users LIMIT 10 SKIP 20 | db.users.find().limit(10).skip(20) |
Or操作 | SELECT * FROM users WHERE a=1 or b=2 | db.users.find( { $or : [ { a : 1 } , { b : 2 } ] } ) |
仅返回1条(TOP 1) | SELECT * FROM users LIMIT 1 | db.users.findOne() |
Distinct聚合 | SELECT DISTINCT last_name FROM users | db.users.distinct('last_name') |
Count聚合 | SELECT COUNT(AGE) from users | db.users.find({age: {'$exists': true}}).count() |
查询计划 | EXPLAIN SELECT * FROM users WHERE z=3 | db.users.find({z:3}).explain() |
引用自:http://www.mongodb.org/display/DOCS/SQL+to+Mongo+Mapping+Chart |