Menu

Studied, Practised, Mock Q, Rev 1, Rev 2, Rev 3 and a confidence score (1–5) for each topic, as in the planner spreadsheet. A topic counts as complete once it is marked studied.

Saved in this browser only. Back it up from the study planner page.

SQL tracker
#TopicCategoryLevelStudiedPractisedMock QRev 1Rev 2Rev 3Confidence
1SELECT, WHERE & basic filteringBeginnerBeginner
2DISTINCT and de-duplicationBeginnerBeginner
3ORDER BY multi-column sortingBeginnerBeginner
4LIMIT / TOP / FETCH FIRSTBeginnerBeginner
5Aliases and column namingBeginnerBeginner
6Comparison & logical operatorsBeginnerBeginner
7IN, BETWEEN, LIKE patternsBeginnerBeginner
8NULL handling with IS NULL / COALESCEBeginnerBeginner
9CASE WHEN expressionsBeginnerBeginner
10String functions (CONCAT, SUBSTRING, TRIM)BeginnerBeginner
11Date functions basicsBeginnerBeginner
12CAST and data type conversionBeginnerBeginner
13Arithmetic & roundingBeginnerBeginner
14Aggregate functions (SUM, AVG, MIN, MAX)BeginnerBeginner
15COUNT vs COUNT(DISTINCT)BeginnerBeginner
16GROUP BY fundamentalsBeginnerBeginner
17HAVING vs WHEREBeginnerBeginner
18Conditional aggregationIntermediateIntermediate
19UNION vs UNION ALLBeginnerBeginner
20EXCEPT / INTERSECT set operationsAdvancedAdvanced
21INNER JOIN basicsBeginnerBeginner
22LEFT JOIN basicsBeginnerBeginner
23RIGHT JOIN & FULL OUTER JOINIntermediateIntermediate
24Self Join patternsIntermediateIntermediate
25Cross Join & cartesian productsIntermediateIntermediate
26Multi-table joinsIntermediateIntermediate
27Semi-join with EXISTSIntermediateIntermediate
28Anti-join (NOT EXISTS / LEFT JOIN NULL)IntermediateIntermediate
29LATERAL / CROSS APPLY joinsAdvancedAdvanced
30Subqueries in WHEREIntermediateIntermediate
31Subqueries in FROM (derived tables)IntermediateIntermediate
32Scalar subqueriesIntermediateIntermediate
33Correlated subqueriesIntermediateIntermediate
34Common Table Expressions (CTEs)IntermediateIntermediate
35Multiple chained CTEsIntermediateIntermediate
36PIVOT rows to columnsIntermediateIntermediate
37UNPIVOT columns to rowsIntermediateIntermediate
38Pivoting dynamic columnsAdvancedAdvanced
39GROUPING SETSIntermediateIntermediate
40ROLLUP and CUBEIntermediateIntermediate
41Window function basics (OVER)IntermediateIntermediate
42PARTITION BY clauseIntermediateIntermediate
43ROW_NUMBER()IntermediateIntermediate
44RANK() vs DENSE_RANK()IntermediateIntermediate
45NTILE() bucketingIntermediateIntermediate
46LAG() and LEAD()IntermediateIntermediate
47FIRST_VALUE / LAST_VALUEIntermediateIntermediate
48Running totals with SUM OVERIntermediateIntermediate
49Moving average with frame clauseIntermediateIntermediate
50Conditional window framesAdvancedAdvanced
51Percent of totalIntermediateIntermediate
52Cumulative distributionIntermediateIntermediate
53Median & percentile (PERCENTILE_CONT)AdvancedAdvanced
54Date truncation & bucketingIntermediateIntermediate
55Generate date series / calendar tableIntermediateIntermediate
56Year-over-year growthAdvancedAdvanced
57Month-over-month changeAdvancedAdvanced
58Rolling 7/30 day metricsAdvancedAdvanced
59Top-N per groupAdvancedAdvanced
60Deduplicate keeping latest recordAdvancedAdvanced
61Slowly changing dimension queriesAdvancedAdvanced
62Recursive CTEsAdvancedAdvanced
63Hierarchical / org-chart queriesAdvancedAdvanced
64Graph traversal in SQLAdvancedAdvanced
65Gaps and Islands problemAdvancedAdvanced
66Detecting consecutive streaksAdvancedAdvanced
67Sessionization of eventsAdvancedAdvanced
68Retention analysisAdvancedAdvanced
69Cohort analysisAdvancedAdvanced
70Funnel / conversion analysisAdvancedAdvanced
71First & last touch attributionAdvancedAdvanced
72Market basket / co-occurrenceAdvancedAdvanced
73JSON parsing in SQLAdvancedAdvanced
74Array & nested data handlingAdvancedAdvanced
75Regex matching in SQLAdvancedAdvanced
76Query optimization & cost reductionExpertExpert
77Reading EXPLAIN / execution plansExpertExpert
78Query rewriting for performanceExpertExpert
79Avoiding full table scansExpertExpert
80Anti-pattern detectionExpertExpert
81Index design (B-tree, composite)ExpertExpert
82Covering indexesExpertExpert
83Index selectivity & cardinalityExpertExpert
84Bitmap indexingExpertExpert
85Partitioning strategiesExpertExpert
86Partition pruningExpertExpert
87Materialized viewsExpertExpert
88Columnar vs row storageExpertExpert
89Sharding & distributed SQLExpertExpert
90Join algorithms (hash, merge, nested loop)ExpertExpert
91Statistics & the optimizerExpertExpert
92Cardinality estimationExpertExpert
93CTE materialization trade-offsExpertExpert
94Spilling & memory managementExpertExpert
95Window function performance tuningExpertExpert
96Handling skew in aggregationsExpertExpert
97Approximate distinct (HLL)ExpertExpert
98Isolation levels (ACID)ExpertExpert
99Deadlocks & lockingExpertExpert
100MVCC conceptsExpertExpert
101Recursive CTEs → Daily Active UsersAdvancedAdvanced
102Query optimization & cost reduction → Monthly RevenueExpertExpert
103RIGHT JOIN & FULL OUTER JOIN → Customer Lifetime ValueIntermediateIntermediate
104Hierarchical / org-chart queries → Churn RateAdvancedAdvanced
105Reading EXPLAIN / execution plans → Average Order ValueExpertExpert
106Self Join patterns → Conversion FunnelIntermediateIntermediate
107Graph traversal in SQL → New vs Returning CustomersAdvancedAdvanced
108Index design (B-tree, composite) → Top Selling ProductsExpertExpert
109Cross Join & cartesian products → Inventory TurnoverIntermediateIntermediate
110Gaps and Islands problem → Employee HierarchyAdvancedAdvanced
111Covering indexes → Fraud Pattern DetectionExpertExpert
112Multi-table joins → Session DurationIntermediateIntermediate
113Sessionization of events → A/B Test ResultsAdvancedAdvanced
114Index selectivity & cardinality → Subscription RenewalsExpertExpert
115Anti-join (NOT EXISTS / LEFT JOIN NULL) → Refund AnalysisIntermediateIntermediate
116Retention analysis → Lead ScoringAdvancedAdvanced
117Partitioning strategies → Page View PathsExpertExpert
118Semi-join with EXISTS → Cart AbandonmentIntermediateIntermediate
119Cohort analysis → Loyalty TiersAdvancedAdvanced
120Partition pruning → Regional Sales SplitExpertExpert
121Subqueries in WHERE → Daily Active UsersIntermediateIntermediate
122Funnel / conversion analysis → Monthly RevenueAdvancedAdvanced
123Materialized views → Customer Lifetime ValueExpertExpert
124Subqueries in FROM (derived tables) → Churn RateIntermediateIntermediate
125Median & percentile (PERCENTILE_CONT) → Average Order ValueAdvancedAdvanced
126Query rewriting for performance → Conversion FunnelExpertExpert
127Scalar subqueries → New vs Returning CustomersIntermediateIntermediate
128Top-N per group → Top Selling ProductsAdvancedAdvanced
129Avoiding full table scans → Inventory TurnoverExpertExpert
130Correlated subqueries → Employee HierarchyIntermediateIntermediate
131Deduplicate keeping latest record → Fraud Pattern DetectionAdvancedAdvanced
132Join algorithms (hash, merge, nested loop) → Session DurationExpertExpert
133Common Table Expressions (CTEs) → A/B Test ResultsIntermediateIntermediate
134Year-over-year growth → Subscription RenewalsAdvancedAdvanced
135Statistics & the optimizer → Refund AnalysisExpertExpert
136Multiple chained CTEs → Lead ScoringIntermediateIntermediate
137Month-over-month change → Page View PathsAdvancedAdvanced
138Deadlocks & locking → Cart AbandonmentExpertExpert
139Conditional aggregation → Loyalty TiersIntermediateIntermediate
140Rolling 7/30 day metrics → Regional Sales SplitAdvancedAdvanced
141Isolation levels (ACID) → Daily Active UsersExpertExpert
142PIVOT rows to columns → Monthly RevenueIntermediateIntermediate
143First & last touch attribution → Customer Lifetime ValueAdvancedAdvanced
144MVCC concepts → Churn RateExpertExpert
145UNPIVOT columns to rows → Average Order ValueIntermediateIntermediate
146Market basket / co-occurrence → Conversion FunnelAdvancedAdvanced
147Window function performance tuning → New vs Returning CustomersExpertExpert
148GROUPING SETS → Top Selling ProductsIntermediateIntermediate
149Slowly changing dimension queries → Inventory TurnoverAdvancedAdvanced
150Handling skew in aggregations → Employee HierarchyExpertExpert
151ROLLUP and CUBE → Fraud Pattern DetectionIntermediateIntermediate
152Detecting consecutive streaks → Session DurationAdvancedAdvanced
153Approximate distinct (HLL) → A/B Test ResultsExpertExpert
154Window function basics (OVER) → Subscription RenewalsIntermediateIntermediate
155Pivoting dynamic columns → Refund AnalysisAdvancedAdvanced
156Bitmap indexing → Lead ScoringExpertExpert
157PARTITION BY clause → Page View PathsIntermediateIntermediate
158Conditional window frames → Cart AbandonmentAdvancedAdvanced
159Columnar vs row storage → Loyalty TiersExpertExpert
160ROW_NUMBER() → Regional Sales SplitIntermediateIntermediate
161EXCEPT / INTERSECT set operations → Daily Active UsersAdvancedAdvanced
162Sharding & distributed SQL → Monthly RevenueExpertExpert
163RANK() vs DENSE_RANK() → Customer Lifetime ValueIntermediateIntermediate
164LATERAL / CROSS APPLY joins → Churn RateAdvancedAdvanced
165CTE materialization trade-offs → Average Order ValueExpertExpert
166NTILE() bucketing → Conversion FunnelIntermediateIntermediate
167JSON parsing in SQL → New vs Returning CustomersAdvancedAdvanced
168Spilling & memory management → Top Selling ProductsExpertExpert
169LAG() and LEAD() → Inventory TurnoverIntermediateIntermediate
170Array & nested data handling → Employee HierarchyAdvancedAdvanced
171Anti-pattern detection → Fraud Pattern DetectionExpertExpert
172FIRST_VALUE / LAST_VALUE → Session DurationIntermediateIntermediate
173Regex matching in SQL → A/B Test ResultsAdvancedAdvanced
174Cardinality estimation → Subscription RenewalsExpertExpert
175Running totals with SUM OVER → Refund AnalysisIntermediateIntermediate
176Recursive CTEs → Lead ScoringAdvancedAdvanced
177Query optimization & cost reduction → Page View PathsExpertExpert
178Moving average with frame clause → Cart AbandonmentIntermediateIntermediate
179Hierarchical / org-chart queries → Loyalty TiersAdvancedAdvanced
180Reading EXPLAIN / execution plans → Regional Sales SplitExpertExpert
181Percent of total → Daily Active UsersIntermediateIntermediate
182Graph traversal in SQL → Monthly RevenueAdvancedAdvanced
183Index design (B-tree, composite) → Customer Lifetime ValueExpertExpert
184Cumulative distribution → Churn RateIntermediateIntermediate
185Gaps and Islands problem → Average Order ValueAdvancedAdvanced
186Covering indexes → Conversion FunnelExpertExpert
187Date truncation & bucketing → New vs Returning CustomersIntermediateIntermediate
188Sessionization of events → Top Selling ProductsAdvancedAdvanced
189Index selectivity & cardinality → Inventory TurnoverExpertExpert
190Generate date series / calendar table → Employee HierarchyIntermediateIntermediate
191Retention analysis → Fraud Pattern DetectionAdvancedAdvanced
192Partitioning strategies → Session DurationExpertExpert
193RIGHT JOIN & FULL OUTER JOIN → A/B Test ResultsIntermediateIntermediate
194Cohort analysis → Subscription RenewalsAdvancedAdvanced
195Partition pruning → Refund AnalysisExpertExpert
196Self Join patterns → Lead ScoringIntermediateIntermediate
197Funnel / conversion analysis → Page View PathsAdvancedAdvanced
198Materialized views → Cart AbandonmentExpertExpert
199Cross Join & cartesian products → Loyalty TiersIntermediateIntermediate
200Median & percentile (PERCENTILE_CONT) → Regional Sales SplitAdvancedAdvanced
201Query rewriting for performance → Daily Active UsersExpertExpert
202Multi-table joins → Monthly RevenueIntermediateIntermediate
203Top-N per group → Customer Lifetime ValueAdvancedAdvanced
204Avoiding full table scans → Churn RateExpertExpert
205Anti-join (NOT EXISTS / LEFT JOIN NULL) → Average Order ValueIntermediateIntermediate
206Deduplicate keeping latest record → Conversion FunnelAdvancedAdvanced
207Join algorithms (hash, merge, nested loop) → New vs Returning CustomersExpertExpert
208Semi-join with EXISTS → Top Selling ProductsIntermediateIntermediate
209Year-over-year growth → Inventory TurnoverAdvancedAdvanced
210Statistics & the optimizer → Employee HierarchyExpertExpert
211Subqueries in WHERE → Fraud Pattern DetectionIntermediateIntermediate
212Month-over-month change → Session DurationAdvancedAdvanced
213Deadlocks & locking → A/B Test ResultsExpertExpert
214Subqueries in FROM (derived tables) → Subscription RenewalsIntermediateIntermediate
215Rolling 7/30 day metrics → Refund AnalysisAdvancedAdvanced
216Isolation levels (ACID) → Lead ScoringExpertExpert
217Scalar subqueries → Page View PathsIntermediateIntermediate
218First & last touch attribution → Cart AbandonmentAdvancedAdvanced
219MVCC concepts → Loyalty TiersExpertExpert
220Correlated subqueries → Regional Sales SplitIntermediateIntermediate
221Market basket / co-occurrence → Daily Active UsersAdvancedAdvanced
222Window function performance tuning → Monthly RevenueExpertExpert
223Common Table Expressions (CTEs) → Customer Lifetime ValueIntermediateIntermediate
224Slowly changing dimension queries → Churn RateAdvancedAdvanced
225Handling skew in aggregations → Average Order ValueExpertExpert
226Multiple chained CTEs → Conversion FunnelIntermediateIntermediate
227Detecting consecutive streaks → New vs Returning CustomersAdvancedAdvanced
228Approximate distinct (HLL) → Top Selling ProductsExpertExpert
229Conditional aggregation → Inventory TurnoverIntermediateIntermediate
230Pivoting dynamic columns → Employee HierarchyAdvancedAdvanced
231Bitmap indexing → Fraud Pattern DetectionExpertExpert
232PIVOT rows to columns → Session DurationIntermediateIntermediate
233Conditional window frames → A/B Test ResultsAdvancedAdvanced
234Columnar vs row storage → Subscription RenewalsExpertExpert
235UNPIVOT columns to rows → Refund AnalysisIntermediateIntermediate
236EXCEPT / INTERSECT set operations → Lead ScoringAdvancedAdvanced
237Sharding & distributed SQL → Page View PathsExpertExpert
238GROUPING SETS → Cart AbandonmentIntermediateIntermediate
239LATERAL / CROSS APPLY joins → Loyalty TiersAdvancedAdvanced
240CTE materialization trade-offs → Regional Sales SplitExpertExpert
241ROLLUP and CUBE → Daily Active UsersIntermediateIntermediate
242JSON parsing in SQL → Monthly RevenueAdvancedAdvanced
243Spilling & memory management → Customer Lifetime ValueExpertExpert
244Window function basics (OVER) → Churn RateIntermediateIntermediate
245Array & nested data handling → Average Order ValueAdvancedAdvanced
246Anti-pattern detection → Conversion FunnelExpertExpert
247PARTITION BY clause → New vs Returning CustomersIntermediateIntermediate
248Regex matching in SQL → Top Selling ProductsAdvancedAdvanced
249Cardinality estimation → Inventory TurnoverExpertExpert
250ROW_NUMBER() → Employee HierarchyIntermediateIntermediate
251Recursive CTEs → Fraud Pattern DetectionAdvancedAdvanced
252Query optimization & cost reduction → Session DurationExpertExpert

Other trackers

Search
Filter by type