sql与mongo查询对比
2014-06-03 13:41
246 查看
SQL Statement | Mongo Statement |
CREATE TABLE USERS (a Number, b Number) | implicit; can also be done explicitly with db.createCollection("mycoll") |
ALTER TABLE users ADD ... | implicit |
INSERT INTO USERS VALUES(3,5) | db.users.insert({a:3,b:5}) |
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:{$ne: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}) |
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() |
SELECT order_id FROM orders o, order_line_items li WHERE li.order_id=o.order_id AND li.sku=12345 | db.orders.find({"items.sku":12345},{_id:1}) |
SELECT customer.name FROM customers,orders WHERE orders.id="q179" AND orders.custid=customer.id | var o = db.orders.findOne({_id:"q179"}); var name = db.customers.findOne({_id:o.custid}) |
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() |
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}) |
EXPLAIN SELECT * FROM users WHERE z=3 | db.users.find({z:3}).explain() |
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'}); |
相关文章推荐
- SQL点滴10—使用with语句来写一个稍微复杂sql语句,附加和子查询的性能对比
- Hibernate的HQL查询语句对比Sql语句学习
- hive 连接查询sql对比效率
- sql查询--join与子查询对比
- SQL查询月、天、周、年(MySql的实例对比)
- SQL查询月、天、周、年(MySql的实例对比)
- SQL-查询JIRA中已创建与已解决问题对比报告
- SQL三种模糊查询方法(LIKE)and (PATINDEX() . CHARINDEX())对比
- Mongodb操作之查询(循序渐进对比SQL语句)
- 有时候为了方便sql语句的对比和查询,我们可以使用declare来定义变量 上下篇的问题
- 【转】SQL点滴10—使用with语句来写一个稍微复杂sql语句,附加和子查询的性能对比
- mongodb的查询方式与sql语句对比
- SQL 查询语句性能对比分析
- MS_SQL模糊查询like和charindex的对比
- hive 连接查询sql对比效率
- 查询大数据表的效率对比:Linq to SQL、Entity Framework、企业库存储过程、ADO.Net
- 查询大数据表的效率对比:Linq to SQL、Entity Framework、企业库存储过程、ADO.Net
- mongodb的查询方式与sql语句对比
- Oracle与SQL-Server数据库SQL"树查询"对比[按照父子节点关系递归拼接]
- 大数据SQL交互查询 presto/spark/mapreduce 计算引擎对比