Scenario-based exercises
Practice with simplified sales, purchases, invoices, payments, products and supplier data.
Build practical SQL skills with realistic finance and accounting data covering revenue, VAT, margins, payments and customer receivables.
SELECT c.nom_client, f.id_facture,f.montant_ttc - COALESCE(SUM(r.montant_regle), 0)AS reste_a_payerFROM clients cJOIN factures f ON c.id_client = f.id_clientLEFT JOIN reglements r ON f.id_facture = r.id_facture;A structured practice environment for learning SQL through realistic finance scenarios.
Practice with simplified sales, purchases, invoices, payments, products and supplier data.
Validate each result automatically and learn from clear feedback.
Understand keys and relationships before writing reliable joins.
Export SQL results to CSV for further analysis.
Track completed exercises locally and progress from SELECT to advanced analysis.
Interpret VAT, margins, receivables and revenue beyond the raw query result.
Every exercise follows the same steps to build reliable SQL habits.
View the learning path →Identify the finance objective and the relevant data.
Choose the relevant tables, filters, joins and aggregations.
Run the query directly against the SQLite database.
Review the returned rows and check their consistency.
Validate the result and understand the solution.
id_client · nom · paysmontant_ht · tva · ttcdate · montant_regleCalculate and rank outstanding balances.
JOIN · LEFT JOIN · COALESCE → Business calculationsCalculate simple margins from sales and costs.
SUM · GROUP BY → ExampleWork with VAT collected and deductible VAT in simplified exercises.
Subqueries · Calculations → Cash flowMeasure financial exposure by customer account.
HAVING · Aggregations → ReportingAnalyze sales by customer, product and period.
Dashboard · KPI → Cash receiptsCompare invoiced and paid amounts.
Relations · Calculations →Start with a finance scenario, run your first query and validate the result.