SQL to MongoDB Mapping Chart
On this page
In addition to the charts that follow, you might want to consider the Frequently Asked Questions section for a selection of common questions about MongoDB.
Terminology and Concepts
The following table presents the various SQL terminology and concepts and the corresponding MongoDB terminology and concepts.
SQL Terms/Concepts | MongoDB Terms/Concepts |
---|---|
database | database |
table | collection |
row | document or BSON document |
column | field |
index | index |
table joins | $lookup , embedded documents |
primary key Specify any unique column or column combination as primary key. |
In MongoDB, the primary key is automatically set to the _id field. |
aggregation (e.g. group by) | aggregation pipeline See the SQL to Aggregation Mapping Chart. |
Executables
The following table presents some database executables and the corresponding MongoDB executables. This table is not meant to be exhaustive.
MongoDB | MySQL | Oracle | Informix | DB2 | |
---|---|---|---|---|---|
Database Server | mongod |
mysqld |
oracle |
IDS |
DB2 Server |
Database Client | mongo |
mysql |
sqlplus |
DB-Access |
DB2 Client |
Examples
The following table presents the various SQL statements and the corresponding MongoDB statements. The examples in the table assume the following conditions:
The SQL examples assume a table named
people
.The MongoDB examples assume a collection named
people
that contain documents of the following prototype:
Create and Alter
The following table presents the various SQL statements related to table-level actions and the corresponding MongoDB statements.
SQL Schema Statements | MongoDB Schema Statements |
---|---|
Implicitly created on first However, you can also explicitly create a collection: |
|
Collections do not describe or enforce the structure of its documents; i.e. there is no structural alteration at the collection level. However, at the document level, |
|
Collections do not describe or enforce the structure of its documents; i.e. there is no structural alteration at the collection level. However, at the document level, |
|
For more information on the methods and operators used, see:
Insert
The following table presents the various SQL statements related to inserting records into tables and the corresponding MongoDB statements.
SQL INSERT Statements | MongoDB insertOne() Statements |
---|---|
For more information, see db.collection.insertOne()
.
Select
The following table presents the various SQL statements related to reading records from tables and the corresponding MongoDB statements.
Note
The find()
method always includes the _id
field in the returned documents unless specifically excluded through projection. Some of the SQL queries below may include an _id
field to reflect this, even if the field is not included in the corresponding find()
query.
SQL SELECT Statements | MongoDB find() Statements |
---|---|