Structured Query Language (SQL)
Structured Query Language (SQL), sometimes pronounced "sequel", is a programming language designed to query and manipulate relational data. Though SQL was designed for use with [relational databases] (relational-databases.md), many other types of databases can support SQL.
Learn SQL: From beginner to expert
Learning Step | Suggested Timeline | Learning Resources |
---|---|---|
Learn basic SQL syntax to select, insert, update, and delete data | 1-3 days | |
Practice new skills as you learn them with a sample database to get a feel for how SQL works in a real-world setting | Ongoing, as new skills are learned | |
Learn advanced concepts like subqueries, joins, aggregation, and query optimization | 2-4 weeks | |
Refine skills and build proficiency with interactive challenges and puzzles | As much as possible, ongoing (i.e. 1 hour per day most days while actively building SQL skills) | |
Learn a specific Database Management System (DBMS) | 1 - 2 weeks | |
Learn general database concepts | 1 - 2 weeks | |
Join and Participate in SQL Communities | Ongoing |
Additional SQL Resources
Deeper Knowledge on Structured Query Language (SQL)

SQL JOIN clauses: INNER, OUTER, LEFT, RIGHT, FULL
Match data across tables with JOIN clauses in SQL
Broader Topics Related to Structured Query Language (SQL)

Relational Databases
Databases that organize data into tables and support relationships through distinct keys

Computer Languages
Computer Languages: How humans tell computers what to do