Explore & Analyze
Understand source tables, inspect data, and identify potential quality problems.
A real-world SQL portfolio project designed to identify, investigate, and validate messy insurance data. Build reliable data quality rules, detect anomalies, and prepare trusted datasets for business reporting.
SELECT
customer_id,
COUNT(*) AS occurrence_count
FROM dq_project.customers_raw
GROUP BY customer_id
HAVING COUNT(*) > 1
ORDER BY occurrence_count DESC;
| customer_id | occurrence_count |
|---|---|
| CUST1024 | 5 |
| CUST8731 | 4 |
| CUST4412 | 3 |
This project simulates a real-world insurance data processing environment where raw customer, policy, and payment records may contain missing values, duplicate identifiers, invalid formats, and inconsistent information.
The objective is to investigate data quality issues, define validation rules, and develop SQL queries that support the creation of reliable datasets for downstream analytics and reporting.
How can an insurance company identify inaccurate customer, policy, and payment records before these issues affect operational reporting, financial reconciliation, and business decisions?
A structured approach to investigating and improving insurance data quality.
Understand source tables, inspect data, and identify potential quality problems.
Apply business validation rules and standardize inconsistent records.
Summarize data quality issues and create useful analytical outputs.
Evaluate how improved data quality supports reliable business reporting.
Three related insurance datasets containing 160,000 raw records for quality investigation.
| Dataset | Description | Records |
|---|---|---|
| customers.csv | Customer information, contact details, and demographic data. | 10,000 |
| policies.csv | Insurance policy details, premiums, coverage dates, and statuses. | 50,000 |
| payments.csv | Payment transactions, amounts, dates, and payment statuses. | 100,000 |
Core business rules investigated throughout the project.
Identify repeated customer and policy identifiers.
Find incomplete or mandatory fields.
Check phone numbers and email formats.
Investigate inconsistent policy dates.
Detect invalid premium and payment amounts.
Identify unmatched records across datasets.
The repository will contain SQL scripts, source datasets, validation queries, project documentation, and analysis results.