SQL is for everyone — that's the motto of DocuSign's Senior Data Scientist Adam Gorski, and he's ready to prove it to you.
This course will teach you how to use SQL to interact with and analyze data, no matter your familiarity with programming.
The ability to use SQL is one of the surest ways to ensure your future employability in an increasingly data-centered job market. This course will empower you with a working knowledge of the SQL language, from basic querying to using SQL to solve business questions. You'll finish this course able to confidently apply SQL in a professional context.
Ask questions in real time. Work out queries during office hours. Get direct feedback on your work. DocuSign's Senior Data Scientist is all-in to help you master this simple and ubiquitous programming language.
Let's make one thing clear: there are no programming skills required for this course. If you interact with data in your current position, work with data scientists on your team, or simply want to be more attractive to hiring managers, this course is for you.
In the first part of the course, you'll learn the basics:
Finish this course able to competently interact with databases, write complex queries, and answer real-world business questions. You'll learn one of the hottest skills in any industry that handles data — and be ready to start immediately applying your knowledge of SQL in a data-related position or serving your business and/or managerial needs.
In the second part of this course, you'll learn:
You'll get practice problems after every lesson to help you check your understanding at each stage. Adam will keep you accountable and work with you during office hours to ensure that at the end of these 6 weeks, you'll be ready to fly solo.
SQL is one of the most important languages in today's data-driven world. You'll understand why that is and learn the basics of how SQL works: what different types of databases are out there, the database management systems that are used, and how the SQL language can retrieve specific information from these systems.
Assignment 01: Send Adam a short self introduction, relating your existing knowledge of data and/or programming, if any, and what you hope to gain from the course.
Today, you'll learn the basic structure of a database and its tables. By the end of the class, you'll understand the components of a SQL query and how to construct queries to pull up specific subsets and sections from a database table.
Assignment 02: Connect to the course database and begin constructing your own queries for specific data requests. Query individual tables, subsetting by column and row using SQL syntax.
Logic and syntax of join statements is the focus of today's class. Learn how to use a variety of join functions across multiple tables and how to avoid common issues with joining, such as duplicate creation.
Assignment 03: Write queries that join data across multiple tables. Practice with the different types of joins, adding conditional statements to joins and performing joins without creating unwanted duplicates.
This class builds on the last to begin constructing queries that return answers to specific questions. You'll learn how to calculate aggregation and to order operations across one or multiple tables.
Assignment 04: Construct queries using aggregation functions to return specific numeric answers. Practice with ranking results and creating nested queries to answer more complex data requests.
Today, you'll apply the techniques you've learned so far to real-life use cases. You'll be presented with several common data questions in the business arena and practice developing a SQL solution for each of them.
Assignment 05: Continue practicing the techniques covered today to solve for a variety of practical business use cases.
Now that you've nailed querying, it's time for data modification and manipulation. You'll learn how to do that by renaming variables, changing data types, and creating new variables.
Assignment 06: Continue writing queries on your own which modify existing data by renaming variables and changing data types. Perform within-query calculations to create new variables.
Date and time data poses specific challenges for databases. In this class, you'll learn how to write queries using date / time functions and be able to perform specific date time operations.
Assignment 07: Practice working with date time data and the complications involved, such as data types, time zone adjustments, and operations with date time variables.
Today, we're learning time series analysis techniques for working with date time data. This class will teach you how to calculate answers to common business questions, such as aggregations by time period, cohort analysis, and growth analysis.
Assignment 08: Build queries to solve common business use cases involving date time data. Practice performing time period operations and aggregations, cohort analysis, and growth analysis.
SQL is a fairly simple language, but there are some more involved SQL techniques, which we will go over today. Students will be able to employ methods for reusing created data, joining data on itself, and mitigating duplicates.
Assignment 09: Answer more complicated assigned data problems, specifically focusing on using WITH statements to reference the same created data multiple times, joining data on itself, and managing duplicates with SELECT DISTINCT and ROW_NUMBER functions.
So far, we've learned how to write queries, structure and manipulate data, and solve for common business questions using SQL. In this workshop, you'll bring together the techniques you have learned in the course so far to solve more complex business use cases encountered by data-based organizations.
Assignment #10: Solve a number of specific data-centered business use cases, which will require the techniques they have learned in the previous lessons.
Database Administrators (DBAs) oversee access control and database development, and knowing how to communicate and work with them is no less essential than knowing how to work with databases themselves. In this class, you'll learn how to construct specific asks to DBAs for data tasks that are typically only performed by DBAs.
Assignment #11: Craft several database modification requests for specific issues which you are likely to encounter in a business context and which usually require the cooperation of a DBA to execute.
SQL is just one piece of a fast-moving industry that has already become indispensable to nearly every sphere of the modern world. Thus, we'll wrap up the course with a discussion of the philosophies of data storage and usage underpinning database construction.
You'll learn about wider trends in data and where we can expect the industry to go in the near future. We'll conclude with a discussion of the skills beyond SQL you might also find useful.
Assignment #12: Reflect on the course, what you have learned, and what you would like to continue learning. How will you employ the skills you have learned in your current or desired role?