博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Mongodb 与sql 语句对照

Posted on 2012-12-26 20:56  75077027  阅读(1190)  评论(0编辑  收藏  举报
  MongoDB Mysql
查询全部 movies.find(new Document()) SELECT * FROM movies
条件查询 movies.Find(new Document { { "title", "Hello Esr" } }); SELECT * FROM movies WHERE title= 'foobar'
查询数量 movies.Find(new Document { { "title", "测试2" } }).Documents.Count(); SELECT COUNT(*) FROM movies WHERE `title` = 'foobar'
数量范围查询 1, movies.Find(new Document().Add("$where", new Code("this.num > 50")));

2, movies.Find(new Document().Add("num",  new Document().Add("$gt",50)));
($gt : > ; $gte : >= ; $lt : < ; $lte : <= ; $ne : !=)

3,movies.Find("this.num > 50");

4,movies.Find(new Document().Add("$where",new Code("function(x){ return this.num > 50};")));
select * from movies where num > 50
分页查询 movies.Find(new Document()).Skip(10).Limit(20); SELECT * FROM movies  limit 10,20
查询排序语句 movies.Find(new Document()).Sort(new Document() { { "num", -1 } }); SELECT * FROM movies ORDER BY num DESC
查询指定字段 movies.Find(new Document().Add("num", new Document().Add("$gt", 50)), 10, 0, new Document() { { "title", 1 } }); select title from movies where num > 50
插入语句 movies.Insert(new Document() { { "title", "测试" }, { "resuleData", DateTime.Now } }); INSERT INOT movies (`title`, `reauleDate`) values ('foobar',25)
删除语句 movies.Remove(new Document() { { "title", "Hello Esr" } }); DELETE * FROM movies
更新语句

movies.Update(new Document() { { "title", "测试2" } }
             , new Document() { { "title", "测试11111" } });

UPDATE movies SET `title` = ‘测试1111’ WHERE `title` = '测试1111'
Linq查询

(from item in db.GetCollection("movies").Linq()
                       where ((string)item["title"]).StartsWith("Esr")
                       select item);

select * from movies where title like ‘%Esr’