
Picture by Editor
For years, Harvard’s CS50 class—everybody’s introduction to Laptop Science—taught by Prof. David J Malan has helped learners from all over the world break into pc science and begin their dev journey. Whereas CS 50 is an introduction to pc science, there are specialised tracks on Python, AI, and extra.
As you may need guessed, the workforce has launched an Introduction to Databases with SQL course—or CS50 SQL—that will help you be taught to question databases, design your individual, and way more.
In case you are an aspiring information skilled, you need to construct a strong basis in databases and SQL. And this course will assist you to get there.
Taught by Carter Zenke, the Introduction to Databases with SQL course is organized into seven modules spanning seven weeks. The modules comprise lectures and related drawback units based mostly on real-world datasets.
For every module, you possibly can observe this method:
- Watch the lectures
- Assessment the notes
- Check out the examples introduced within the lecture
- Work by the issue set for the module
You’ll be able to remedy the issue units on VS Code for CS50. Like codespaces, it provides you VS Codde on the cloud—tailored for CS50. So there’s a ton of studying and observe as you’re progressing by the course.
Now that we all know what the course is about, let’s go over its contents.
Observe: Modules 1 by 7 beneath map to weeks 0 by 6 within the course.
The primary module Querying Databases begins out by discussing the necessity to transfer past spreadsheets and the way information is saved in a relational database. It then proceeds to the fundamentals of querying databases with SQL. The subjects the subjects coated embrace:
- SELECT assertion
- LIMIT and WHERE clause
- Understanding NULLs
- LIKE key phrase
- Ranges
- ORDER BY
- mixture features
Try the module on querying.
The Relating Database Tables module builds on the earlier module and strikes past a single database desk. You’ll be taught to work with a number of tables and perceive the relationships between them. The subjects coated embrace:
- Entity relationship diagrams (ER diagrams)
- Relationship varieties: one-to-one, one-to-many, and many-to-many relationships
- Keys: major and international keys
- Subqueries
- IN key phrase
- JOINs
- Set operations: INTERSECT, UNION, and EXCEPT
- GROUPBY
Try the module on relating.
Thus far you’ve realized to work with databases, question single and a number of tables to reply questions. However how do you create such a database your self? This module Designing Database Schemas covers precisely that. You’ll be taught to design databases from scratch together with ideas like:
- Creating database schemas
- Ideas of normalization and relating database tables
- Creating tables
- Knowledge varieties and storage courses
- Constraints on tables and columns
- Altering tables
Try the module on designing.
By now you realize to retrieve information from databases utilizing queries and design your individual databases from scratch. This module Writing to Databases teaches you:
- Inserting data into databases
- Importing information from CSV information right into a database
- Deleting and updating data
Try the module on writing.
The following module on Viewing Database Tables is a deep dive into creating database views and their benefits overlaying:
- What views are
- Creating views
- Benefits of making views
- Frequent Desk Expressions (CTEs)
- Partitioning
- Securing databases
- Mushy deletions
Try the module on viewing.
The Optimizing Database Queries module focuses on utilizing indexes to hurry up database queries and the trade-offs related to indexes. The subject coated embrace:
- Making a database desk index
- Creating indexes throughout a number of tables
- House and time trade-off
- Partial indexes on a subset of rows
- Transactions and race circumstances
Try the module on optimizing.
On this course up to now, you’ve used SQLite. This closing module on Scaling Databases introduces you to MySQL and PostgreSQL. It lays a basis for these extensively used RDMSs you could construct upon. This module covers:
- Creating and altering tables
- MySQL saved procedures
- Saved procedures with parameters
- Working with PostgreSQL
- Entry management statements
- SQL injection assaults
Try the module on scaling.
All of the subjects coated on this course are vital if you happen to’re contemplating a profession in information. Introduction to Databases in Knowledge Science gives an summary of the relevance of databases and important database abilities.
Total, this can be a nice course to construct a strong basis in databases and SQL. As a knowledge skilled, you’ll use SQL on a regular basis. However you’ll additionally understand that mastering SQL is a steady journey. And to that finish observe is your greatest buddy!
For those who’re able to hone and flex your SQL muscle mass, take a look at this compilation of the 7 Finest Platforms to Observe SQL.
Bala Priya C is a developer and technical author from India. She likes working on the intersection of math, programming, information science, and content material creation. Her areas of curiosity and experience embrace DevOps, information science, and pure language processing. She enjoys studying, writing, coding, and occasional! Presently, she’s engaged on studying and sharing her data with the developer neighborhood by authoring tutorials, how-to guides, opinion items, and extra.