CS50's Introduction to Databases with SQL

This is CS50’s introduction to databases using a language called SQL. Learn how to create, read, update, and delete data with relational databases, which store data in rows and columns. Learn how to model real-world entities and relationships among them using tables with appropriate types, triggers, and constraints. Learn how to normalize data to eliminate redundancies and reduce potential for errors. Learn how to join tables together using primary and foreign keys. Learn how to automate searches with views and expedite searches with indexes. Learn how to connect SQL with other languages like Python and Java. Course begins with SQLite for portability’s sake and ends with introductions to PostgreSQL and MySQL for scalability’s sake as well. Assignments inspired by real-world datasets. Whereas CS50x itself focuses on computer science more generally as well as programming with C, Python, SQL, and JavaScript, this course, aka CS50 SQL, is entirely focused on SQL. You can take CS50 SQL before CS50x, during CS50x, or after CS50x. But for an introduction to computer science itself, you should still take CS50x!

Free8 lessons11h 8mBeginner

by CS50

May 2023

Checked 6 days ago

What you'll learn

  • Querying
  • Relating
  • Designing
  • Writing
  • Viewing
  • Optimizing
  • Scaling

Taken from the course's own lessons, in the author's words.

Free

This course is free and published on YouTube. The channel is its author; we organise it and check that the videos still play.

Start the course

Explore related topics

This course includes

  • 11h 8m of video
  • 8 lessons
  • Level: Beginner
  • Spoken in English
  • Your place is remembered
  • Free in full, no card

Lessons

1 sections · 8 lessons · 11h 8m total length

What you need

  • No prior experience: this course starts from zero.

Description

This is CS50’s introduction to databases using a language called SQL. Learn how to create, read, update, and delete data with relational databases, which store data in rows and columns. Learn how to model real-world entities and relationships among them using tables with appropriate types, triggers, and constraints. Learn how to normalize data to eliminate redundancies and reduce potential for errors. Learn how to join tables together using primary and foreign keys. Learn how to automate searches with views and expedite searches with indexes. Learn how to connect SQL with other languages like Python and Java. Course begins with SQLite for portability’s sake and ends with introductions to PostgreSQL and MySQL for scalability’s sake as well. Assignments inspired by real-world datasets. Whereas CS50x itself focuses on computer science more generally as well as programming with C, Python, SQL, and JavaScript, this course, aka CS50 SQL, is entirely focused on SQL. You can take CS50 SQL before CS50x, during CS50x, or after CS50x. But for an introduction to computer science itself, you should still take CS50x!

Who this course is for

  • Anyone starting SQL from nothing.

Those two are our reading of the course's level. The description is the author's own.

CS50's Introduction to Databases with SQL, by CS50