MongoDB vs PostgreSQL — Reading Data with Examples
When working with databases, reading data is one of the most common tasks. Let’s see how this differs between MongoDB (NoSQL) and PostgreSQL (SQL/Relational) with examples.
MongoDB (NoSQL)
MongoDB stores data in JSON-like documents. Reading data is done using the find() method.
Example: Reading all users
db.users.find()
Example: Reading specific fields
db.users.find({}, { name: 1, email: 1 })
Example: Filtering with conditions
db.users.find({ age: { $gte: 18 } })
PostgreSQL (SQL / Relational)
PostgreSQL stores data in tables with rows & columns. Reading is done using SELECT queries.
Example: Reading all users
SELECT * FROM users;
Example: Reading specific columns
SELECT name, email FROM users;
Example: Filtering with conditions
SELECT * FROM users WHERE age >= 18;
⚖️ Key Differences in Reading Data
| Feature | MongoDB | PostgreSQL | |----------------|----------------------------------------|-----------------------------------------------| | Data Format | JSON-like documents | Tables with rows & columns | | Query Language | MongoDB Query Language (MQL) | SQL | | Flexibility | Schema-less, dynamic fields | Strict schema, well-structured | | Joins | Handled via $lookup | Native JOIN support | | Use Case | Unstructured / semi-structured data (e.g., logs, IoT, catalogs) | Structured data with relationships (e.g., banking, ERP) |
Takeaway:
- Use MongoDB if your data is flexible and document-oriented.
- Use PostgreSQL if you need structured data with strong relationships and complex queries.
About the Author
Harsh Kadiya
Senior iOS & Flutter Developer