1. select查询


mongodb使用find或者findOne来查询:

find批量查询。

findOne是查询一条记录。

find有两个參数: 第一个查询条件, 第二个查询返回的字段。

以下是mongodb与sql查询的相应关系表:

SQL SELECT Statements                         

MongoDB find() Statements

SELECT *

FROM users

db.users.find()

SELECT id,

user_id,

status

FROM users

db.users.find(

{ },

}

)

SELECT user_id,status

FROM users

db.users.find(

{ },

}

)

SELECT *

FROM users

WHERE status="A"

db.users.find(

{ status:"A" }

)

SELECT user_id,status

FROM users

WHERE status="A"

db.users.find(

{ status:"A" },

}

)

SELECT *

FROM users

WHERE status!="A"

db.users.find(

{ status: {$ne:"A"
} }

)

SELECT *

FROM users

WHERE status="A"

db.users.find(

{ status:"A",

}

)

SELECT *

FROM users

WHERE status="A"

db.users.find(

{ $or: [ {status:"A"
} ,

} ] }

)

SELECT *

FROM users

db.users.find(

} }

)

SELECT *

FROM users

db.users.find(

} }

)

SELECT *

FROM users

db.users.find(

} }

)

SELECT *

FROM users

WHERE user_id like "%bc%"

db.users.find( {user_id:/bc/
} )

SELECT *

FROM users

WHERE user_id like "bc%"

db.users.find( {user_id:/^bc/
} )

SELECT *

FROM users

WHERE status="A"

ORDER BY user_id ASC

db.users.find( {status:"A"
} ).sort( {user_id } )

SELECT *

FROM users

WHERE status="A"

ORDER BY user_id DESC

db.users.find( {status:"A"
} ).sort( {user_id } )

SELECT COUNT(*)

FROM users

db.users.count()

or

db.users.find().count()

SELECT COUNT(user_id)

FROM users

db.users.count( {user_id: {$exists:true
} } )

or

db.users.find( {user_id: {$exists:true
} } ).count()

SELECT COUNT(*)

FROM users


} } )

or


} } ).count()

SELECT DISTINCT(status)

FROM users

db.users.distinct("status" )

SELECT *

FROM users

db.users.findOne()

or

)

SELECT *

FROM users

)

EXPLAIN SELECT  *

FROM users

WHERE status="A"

db.users.find( {status:"A"
} ).explain()

2. insert插入

SQL INSERT Statements                       

   MongoDB insert() Statements

INSERT  INTO  users(user_id,

age,

status)

VALUES  ("bcd001",

,

"A")

db.users.insert(

,status:"A"}

)

3. update更新


      SQL Update Statements              

           MongoDB update() Statements

   UPDATE users

  SET  status="C"

db.users.update(

{ age: {
$gt } },

{ $set: {
status:"C" } },

{ multi:true }

)

  UPDATE  users

  WHERE  status="A"

db.users.update(

{ status:"A" } ,

{ $inc: {
age } },

{ multi:true }

)

4. delete 删除

  SQL Delete Statements                  

  MongoDB remove() Statements

  DELETE  FROM  users

  WHERE  status="D"

  db.users.remove( {
status:"D" } )

  DELETE  FROM  users

   db.users.remove({})

地址:http://blog.csdn.net/yonggang7/article/details/26067059


mongodb与SQL相应关系表的更多相关文章

  1. mongodb与SQL对应关系表

    1. select查询 mongodb使用find要么findOne要查询: find批量查询. findOne查询记录. find有两个参数: 查询条件. 第二个查询返回的字段. 以下是mongod ...

  2. EF架构~关系表插入应该写在事务里,但不应该是分布式事务

    回到目录 这个标题很有意思,关系表插入,就是说主表和外表键在插入时,可能会有同步插的情况,如在建立主表时,扩展表需要同步完成数据的初始化工作,而对于多表插入时,我们为了保证数据的一致性会针它写在事务中 ...

  3. SQL Server 系统表简介

    SQL Server 系统表简介 系统目录是由描述SQL Server 系统的数据库.基表.视图和索引等对象的结构的系统表组成.SQL Server 经常访问系统目录,检索系统正常运行所需的必要信息. ...

  4. 基于.net mvc的校友录(七、文件上传以及多对多关系表的LINQ查询实现)

    图片的上传与调用 图片的上传就是文件的上传,在前台使用的是type="file"的input,但是,要将表单声明为multipart/form-data模式,方法是在BeginFo ...

  5. 【MongoDB】MongoDB VS SQL数据库

    MongoDB和SQL数据库都能满足数据库的基本功能:1.有组织的存放数据:2.按照需求查询数据 传统的SQL数据库(e.g.Oracle, MySQL) 对表的运用不够灵活,横向扩展不太容易,而它的 ...

  6. 章节2:SQL之多表连接

    原文:章节2:SQL之多表连接 Sql的多表连接关系有:内连接.外连接和交叉连接. 先建立两个用于演示的表: TB_Characters: Id Character 1 内向 2 外向 3 中性性格 ...

  7. EF Core 2.0 已经支持自动生成父子关系表的实体

    现在我们在SQL Server数据库中有Person表如下: CREATE TABLE [dbo].[Person]( ,) NOT NULL, ) NULL, ) NULL, ) NULL, [Cr ...

  8. Python与数据库[2] -> 关系对象映射/ORM[5] -> 利用 sqlalchemy 实现关系表查询功能

    利用 sqlalchemy 实现关系表查询功能 下面的例子将完成一个通过关系表进行查询的功能,示例中的数据表均在MySQL中建立,建立过程可以使用 SQL 命令或编写 Python 适配器完成. 示例 ...

  9. 用SQL数据库做多表关联应怎样设计库结构20170527

    http://77857.blog.51cto.com/67857/143872/ 多表关联的话表之间必须得存在关系才行呢,这样建立外键约束就行了, 关系表中插入主表的主键做外键. 假设表1学生表st ...

随机推荐

  1. springboot 静态方法注入bean、使用@value给static变量赋值

    首先新建你的方法类:DemoUtil 头部加注解:@Component @Component public class DemoUtil { } 新增静态变量: static DemoService ...

  2. vue --- 路由传参的几种方式

    方案一: getDescribe(id) { // 直接调用$router.push 实现携带参数的跳转 this.$router.push({ path: `/describe/${id}`, }) ...

  3. 安卓开发--AsyncTask2

    package com.cnn.imageasyncdemo01; import android.app.Activity; import android.content.Intent; import ...

  4. Android实现App版本自动更新

    现在很多的App中都会有一个检查版本的功能.例如斗鱼TV App的设置界面下: 当我们点击检查更新的时候,就会向服务器发起版本检测的请求.一般的处理方式是:服务器返回的App版本与当前手机安装的版本号 ...

  5. 关于table布局

    html-table 宝贝 状态 单价 数量 商品总价 运费 1sdsdf 2 3fffff 4sdfsfsffsdfs 5dsfs 6

  6. Debian9.5 WPS for Linux字体配置(字体缺失解决办法)

    启动WPS for Linux后,出现提示"系统缺失字体" . 出现提示的原因是因为WPS for Linux没有自带windows的字体,只要在Linux系统中加载字体即可. 具 ...

  7. ArcGIS api for javascript——地图配置-增加一个调试控制台<

    描述 该示例展示了在应用中如何包含一个Dojo调试控制台.可以写信息到控制台来记录发生的事件和应用运行时设置的属性.当调试Internet Explorer浏览器的错误时这是极为有帮助的.(对Fire ...

  8. svn 的使用(二)

    这篇主要介绍下 svn 钩子的使用,svn 的安装以及配置等能够查看svn 的使用(一) 我们能够在svn创建的仓库目录下看到 hooks 目录. 这里面就存放这个各种svn操作同一时候会运行的脚本文 ...

  9. ubuntu 下安装eclipse &amp;java环境配置

    前面有一篇的博客写的是ubuntu下安装eclipse和java环境的配置.当时是安装网上的攻略进行的 ,当然也是能够成功的. 近期把那台电脑送人了 ,仅仅好在自己的这台电脑上又一次安装一次了 ,唯一 ...

  10. java内部类的初始化

    public class InnerClassTest { /** * @param args */ public static void main(String[] args) { // TODO  ...