Learn SQL the Hard Way
UPDATE PENDING: The current state of this course is a quick set of lessons to learn the basics of SQL using SQLite3. This course will receive a refresh soon that will expand it to be a more complete course in not just SQL, but also data design and management. Pre-order now to lock in the lower price before this refresh is announced.
Course Contents
This course contains the following modules and lessons. Every course offers free samples of the first 10 lessons so you can decide if you want to take the course, and excerpts from all lessons after that.
Module Learn SQL the Hard Way
An introductory course in the SQL programming data language.
- PrefaceThis is a simple course that teaches you the basics of SQL.
- Introduction: Haters Gonna Hate, Or Why You Still Need SQLSQL is everywhere, and I'm not saying that because I want you to use it.
- Exercise 0: The SetupThis book will use SQLite3(http://www.
- Exercise 1: Creating TablesIn the introduction I said that you can do "Create Read Update Delete" operations to the data inside tables.
- Exercise 2: Creating A Multi-Table DatabaseCreating one table isn't too useful.
- Exercise 3: Inserting DataYou have a couple tables to work with, so now I'll have you put some data into them using the
INSERT
command: {{ ork. - Exercise 4: Insert Referential DataIn the last exercise you filled in some tables with people and pets.
- Exercise 5: Selecting DataOut of the CRUD matrix you only know "Create".
- Exercise 6: Join Many TablesHopefully you're getting your head around selecting data out of tables.
- Exercise 7: Deleting DataThis is the simplest exercise, but I want you to think for a second before typing the code in.
- Exercise 8: Deleting Using Other TablesRemember I said, "
DELETE
is likeSELECT
but it removes rows from the table. - Exercise 9: Updating DataYou now know the CRD parts of CRUD, and I just need to teach you the Update part to round out the core of SQL.
- Exercise 10: Updating Complex DataIn the previous exercise you did a simple
UPDATE
that changed just one row. - Exercise 11: Replacing DataI'm going to show you an alternative way to insert data which helps with atomic replacement of rows.
- Exercise 12: Destroying And Altering TablesYou've already encountered
DROP TABLE
as a way to get rid of a table you've created. - Exercise 13: Migrating And Evolving DataThis exercise will have you apply some skills you've learned.
- Exercise 14: Basic TransactionsImagine if the SQL in your last exercise had an error half-way through its run and it aborted.
- Exercise 15: GROUP BY And CountsFor this exercise we'll need a large dataset to demonstrate how to group rows by data in their columns.
- Exercise 16: GROUP BY With RelationsFor the rest of the book we will be using the `ex15.
- Exercise 17: Dates, Times and ORDER BYI'm going to tell you a little story about SQL and time.
- Exercise 18: Aggregate FunctionsIn this exercise you'll learn the other "aggregate functions".
- Exercise 19: Logic and Math ExpressionsThe SQLite3 language supports many more functions to handle math, string manipulation, grouping, types, and other features in the SQLite3 Core Functions(https://www.
- Exercise 20: Inner and Outer JoinsYou have been learning how to join (link) tables using simple equality (`person.
- Exercise 21: Using ViewsA
VIEW
is a fake table that is populated with the results of aSELECT
query you write. - Exercise 22: Accessing SQLite3 from PythonLearn how to access a SQLite3 database from Python.
- Exercise 23: Setting Up PostgreSQLThe final exercise in this book will teach you to setup a basic PostgreSQL database on your desktop machine.
- Next StepsYou now know the very basic level of SQL.