MongoDB和MySQL对应关系

MongoDB是nosql类型的数据库,MySQL是传统关系型的数据库,它们都是数据库,然而在语法、结构上都有很大差别,不过很多东西还是可以做类比,下面是MongoDB和MySQL一些对应关系。

MongoDB和MySQL术语上的对应关系:

SQL Terms/Concepts MongoDB Terms/Concepts
database database
table collection
row document or BSON document
column field
index index
table joins embedded documents and linking
primary key

Specify any unique column or column combination as primary key.

primary key

In MongoDB, the primary key is automatically set to the _idfield.

aggregation (e.g. group by) aggregation pipeline

See the SQL to Aggregation Mapping Chart.

MongoDB和MySQL在增删查改语句上的对应关系:

比如创建一张表,MongoDB语句如下:

或者

这对应的MySQL语句为:

再比如MongoDB和MySQL创建索引的方式对比:

MongoDB创建索引语句:

对应的MySQL语句是:

再比如增加字段,MongoDB是nosql数据库,并没有MySQL固定表结构的概念,给MongoDB的集合(对应MySQL的表)添加字段,对于MongoDB来说就是加一个field。

第一个位置为空,说明是给集合里面每个元素都加上join_date的键值,这样相当于MySQL中一张表统一加上join_date这个字段,对应的sql语句如下:

再比如最常见的操作之一,增加一条数据,MongoDB的语法:

MySQL的sql语句:

具体请见:http://docs.mongodb.org/manual/reference/sql-comparison/

打赏