Learn SQL and Databases the Easy Way
Plain-English guides to SQL, SQL Server performance, database design, data analysis and Delphi, written by a developer who works with databases every day. No jargon, lots of real examples.
Where Do You Want to Start?
New to SQL
Write your first queries and learn to filter, sort and summarise data.
Designing a Database
Build tables that keep your data clean, consistent and easy to query.
Going Further
Speed up queries, protect your data and write smarter SQL.
My Queries Are Slow
Find out why SQL Server is slow and fix it step by step.
Delphi + SQL Server
Build fast business apps in Delphi that work with SQL Server.
SQL for Data Analysis
Clean, summarise and report on your data with SQL.
Latest Articles
- EXISTS vs IN vs JOIN in SQL: Which One Should You Use?
The same question answered with EXISTS, IN and JOIN: when each one is right, why JOIN can duplicate rows, the NOT IN NULL trap, and what really matters for speed. - SQL for Data Analysis: A Step-by-Step Roadmap
What to learn, in what order, to use SQL for real data analysis: 9 stages with free tutorials, an 8-week study plan and a first portfolio project. - Aging Report in SQL Server: Group Unpaid Invoices into 0-30, 31-60, 61-90 and 90+ Days
Build an accounts receivable aging report in SQL Server step by step: open amount per invoice, days overdue, aging buckets per customer, totals, and common mistakes. - Basic Statistics in SQL: Average, Median, Percentiles and Standard Deviation
Calculate averages, medians, percentiles, mode and standard deviation in SQL Server and MySQL, find outliers, and learn which number to report. - SQL SELF JOIN Explained Simply (With Employee and Manager Examples)
What a SQL self join is and how to write one: show each employee with their manager, keep the top of the hierarchy with LEFT JOIN, compare related rows, find pairs and duplicates, and build a full org chart with a recursive CTE. - Data Cleaning in SQL: A Step-by-Step Guide (With Real Examples)
Learn data cleaning in SQL step by step: trim spaces, turn blanks into NULL, fix text numbers and mixed date formats, and remove duplicates, with SQL Server and MySQL examples. - SQL Server Blocking: How to Find the Blocking Session (and Fix It)
How to find blocking in SQL Server in under a minute: the DMV queries that show who is waiting and who the head blocker is, what to do right now, and how to stop blocking from coming back. - Why Delphi Is Still a Great Choice for ERP and Business Apps in 2026
Why Delphi is still a strong choice for ERP and business software: visual forms, built-in database access, native speed, a long life, and the honest downsides. - Delphi Basics: Variables, Data Types, If, Case and Loops Explained Simply
Learn Object Pascal basics in Delphi: variables, constants, data types, strings, if/else, case and for, while and repeat loops, with runnable examples.