SQLiteracy · skill review
Your SQL skills
Every exercise trains named skills, and this page keeps score: a skill counts as mastered when you've passed every exercise that teaches it. Progress syncs to your account and follows you to any device.
select-basicsSELECT, FROM, and choosing columns0 of 4 passed
limitingLIMIT and working with big tables safely0 of 3 passed
aliasingRenaming columns with AS0 of 1 passed
distinctDeduplicating values with DISTINCT0 of 5 passed
- What kinds of airfields are there?Basic
- Which months were collapsed?Intermediate
- Put names on the classesIntermediate
- Who's the biggest airline?Advanced
- Section 3: Competitive shapeAdvanced
countingCOUNT(*) and COUNT(column)0 of 10 passed
- How big is this table, anyway?Basic
- Measuring the missing dataBasic
- What this database admits it doesn't knowIntermediate
- The join that keeps everythingIntermediate
- Carriers that exist only on paperIntermediate
- Every airport this system touchesAdvanced
- The two-way streetAdvanced
- Routes that only fly one wayAdvanced
- Months above the lineAdvanced
- What is a row, anyway?Advanced
filteringWHERE with comparison operators0 of 12 passed
- Every airfield in one countryBasic
- Narrowing it down with ANDBasic
- Airfields in thin airBasic
- A band around the equatorBasic
- America's big airports, alphabeticallyBasic
- Sorting by two things at onceBasic
- The highest airports you can book a ticket toBasic
- Reading a table you were never taughtBasic
- The seaplane bases the booking sites knowBasic
- Scheduled service below sea levelBasic
- The sanity checkIntermediate
- What is a row, anyway?Advanced
logical-operatorsCombining conditions with AND, OR, and NOT0 of 3 passed
pattern-matchingLIKE and wildcard patterns0 of 1 passed
set-membershipIN lists and BETWEEN ranges0 of 3 passed
sortingORDER BY, ASC/DESC, and multi-key sorts0 of 14 passed
- The ten highest airfields on EarthBasic
- Countries, A to ZBasic
- America's big airports, alphabeticallyBasic
- Sorting by two things at onceBasic
- The highest airports you can book a ticket toBasic
- Reading a table you were never taughtBasic
- The lowest airfields (and the NULL ambush)Basic
- Scheduled service below sea levelBasic
- Short, medium, longIntermediate
- Codes without a homeIntermediate
- Arrivals onlyAdvanced
- Stacking, not dedupingAdvanced
- Feast and famineAdvanced
- Who's the biggest airline?Advanced
top-nORDER BY with LIMIT for top-N questions0 of 9 passed
- The ten highest airfields on EarthBasic
- The highest airports you can book a ticket toBasic
- The lowest airfields (and the NULL ambush)Basic
- The ten busiest airports in AmericaIntermediate
- Share of the skyAdvanced
- Top routes, with names this timeAdvanced
- Section 2: Where the traffic goesAdvanced
- Section 5: Slack in the systemAdvanced
- Section 6: The missing nonstopAdvanced
schema-readingReading a schema panel and table structures0 of 1 passed
null-filteringRecognizing and handling NULLs in filters and aggregates0 of 13 passed
- The seaplane bases the booking sites knowBasic
- The lowest airfields (and the NULL ambush)Basic
- Measuring the missing dataBasic
- Scheduled service below sea levelBasic
- The industry's favorite numberIntermediate
- The load factor league tableIntermediate
- What this database admits it doesn't knowIntermediate
- Which months were collapsed?Intermediate
- A code for every seaplane baseIntermediate
- The airports the booking sites never show youIntermediate
- Reporting on the known universeIntermediate
- Put names on the classesIntermediate
- The division that doesn't lieIntermediate
aggregationAggregate functions, GROUP BY, and HAVING0 of 29 passed
- How many people flew?Intermediate
- Domestic versus internationalIntermediate
- The ten busiest airports in AmericaIntermediate
- The industry's favorite numberIntermediate
- Only the majors need applyIntermediate
- The load factor league tableIntermediate
- The airports the booking sites never show youIntermediate
- Reporting on the known universeIntermediate
- Two totals, one rowIntermediate
- Short, medium, longIntermediate
- Where the freight fliesIntermediate
- The division that doesn't lieIntermediate
- The world's quiet giantsIntermediate
- Stacking, not dedupingAdvanced
- Share of the skyAdvanced
- The average of totalsAdvanced
- Feast and famineAdvanced
- Months above the lineAdvanced
- Ranking the big sixAdvanced
- The system, month over monthAdvanced
- The two load factorsAdvanced
- How long is a flight?Advanced
- Who's the biggest airline?Advanced
- Three answers to one questionAdvanced
- Section 1: Market positionAdvanced
- Section 2: Where the traffic goesAdvanced
- Section 3: Competitive shapeAdvanced
- Section 4: The rhythm of the yearAdvanced
- Section 5: Slack in the systemAdvanced
joinsCombining tables with JOIN and table aliases0 of 11 passed
- Who flies out of Seattle?Intermediate
- Where can Seattle take you?Intermediate
- What flies the Seattle to Los Angeles run?Intermediate
- Every country you can reach from JFKIntermediate
- The same table, twiceIntermediate
- Only the majors need applyIntermediate
- The load factor league tableIntermediate
- The world's quiet giantsIntermediate
- Top routes, with names this timeAdvanced
- Every carrier's crown jewel routeAdvanced
- Section 2: Where the traffic goesAdvanced
derived-tablesSubqueries in FROM and staged query building0 of 6 passed
- The join that keeps everythingIntermediate
- Every airport this system touchesAdvanced
- Routes that only fly one wayAdvanced
- Every carrier's crown jewel routeAdvanced
- Same month, last yearAdvanced
- The trend line under the sawtoothAdvanced
window-functionsOVER, PARTITION BY, ranking, and LAG/LEAD0 of 7 passed
- Ranking the big sixAdvanced
- Every carrier's crown jewel routeAdvanced
- The system, month over monthAdvanced
- Same month, last yearAdvanced
- The trend line under the sawtoothAdvanced
- Section 1: Market positionAdvanced
- Section 4: The rhythm of the yearAdvanced
trend-analysisMonth-over-month, year-over-year, and moving averages0 of 4 passed
- The system, month over monthAdvanced
- Same month, last yearAdvanced
- The trend line under the sawtoothAdvanced
- Section 4: The rhythm of the yearAdvanced
conditional-logicCASE expressions, NULLIF, and guarded division0 of 6 passed
- Put names on the classesIntermediate
- Two totals, one rowIntermediate
- Short, medium, longIntermediate
- Where the freight fliesIntermediate
- The division that doesn't lieIntermediate
- Section 3: Competitive shapeAdvanced
outer-joinsLEFT JOIN and NULL-extended rows0 of 6 passed
- The join that keeps everythingIntermediate
- Codes without a homeIntermediate
- Carriers that exist only on paperIntermediate
- The world's quiet giantsIntermediate
- The sanity checkIntermediate
- Planes that never flewIntermediate
anti-joinsFinding missing rows with LEFT JOIN ... IS NULL and NOT EXISTS0 of 6 passed
- Codes without a homeIntermediate
- Carriers that exist only on paperIntermediate
- The world's quiet giantsIntermediate
- The sanity checkIntermediate
- Planes that never flewIntermediate
- Section 6: The missing nonstopAdvanced
set-operationsUNION, INTERSECT, and EXCEPT0 of 5 passed
- Every airport this system touchesAdvanced
- Arrivals onlyAdvanced
- The two-way streetAdvanced
- Routes that only fly one wayAdvanced
- Stacking, not dedupingAdvanced
ctesWITH clauses and readable multi-stage queries0 of 10 passed
- Share of the skyAdvanced
- The average of totalsAdvanced
- Top routes, with names this timeAdvanced
- Feast and famineAdvanced
- Months above the lineAdvanced
- Three answers to one questionAdvanced
- Section 1: Market positionAdvanced
- Section 3: Competitive shapeAdvanced
- Section 5: Slack in the systemAdvanced
- Section 6: The missing nonstopAdvanced
grain-awarenessRow grain, weighted averages, and honest ratios0 of 6 passed
- What is a row, anyway?Advanced
- The two load factorsAdvanced
- How long is a flight?Advanced
- Who's the biggest airline?Advanced
- Three answers to one questionAdvanced
- Section 5: Slack in the systemAdvanced