Skip to content

Repository files navigation

🗄️ SQL Data Analysis Project — Data Technician Bootcamp

This repository contains my SQL practice and analysis completed during the Data Technician Bootcamp, focusing on writing efficient queries to explore, filter, and extract insights from retail and sales datasets. The project demonstrates core SQL skills used in real-world data roles, including data retrieval, aggregation, and table relationships.

🧰 Skills Demonstrated

✔️ SELECT

Used to retrieve specific columns from the dataset, such as country names, languages, and population values.

✔️ WHERE

Filtered rows based on conditions — for example, finding all countries where English is spoken or identifying non‑official languages.

✔️ ORDER BY

Grouped data to calculate aggregates like:
  • Number of languages per country

  • Maximum language percentage

  • Total percentage of official languages

✔️ JOINs

Practised multiple join types (INNER, LEFT, RIGHT, FULL, CROSS, SELF‑JOIN) to understand how tables relate in retail and sales systems — essential for combining customer, product, and transaction data.

📊 Example Insights Extracted

Using SQL queries, I was able to uncover insights such as:
  • Countries with more than one official language

  • Countries where a single language dominates over 50%

  • Non‑official languages spoken under 10%

  • Countries whose total language percentages indicate data quality issues

  • Cities containing specific text patterns (e.g., 'la')

These exercises mirror real retail analytics tasks, such as identifying customer segments, product popularity, or regional sales trends.

🧪 Sample SQL Techniques Used

-- Distinct values SELECT DISTINCT country_name FROM world_combined_30;

-- Filtering with conditions SELECT language, language_percentage

FROM world_combined_30

WHERE country_name = 'Angola'

ORDER BY language_percentage DESC;

-- Aggregation SELECT country_name, COUNT(*) AS language_count

FROM world_combined_30

GROUP BY country_name

ORDER BY language_count DESC;

-- Subquery example SELECT country_name, country_population

FROM world_combined_30

WHERE country_population > ( SELECT AVG(country_population) FROM world_combined_30 );

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors