A hands-on SQL portfolio project focused on using relational data to investigate realistic SaaS support scenarios.
This repository documents my progression from foundational SQL queries into support-focused investigations involving ticket triage, customer impact, and resolution performance.
- SELECT and column selection
- WHERE filtering with AND / OR
- LIKE, BETWEEN, IS NULL, and DISTINCT
- ORDER BY and LIMIT
- CASE expressions
- Aggregate functions: COUNT, MIN, MAX, AVG, ROUND
- GROUP BY and HAVING
- Primary and foreign key relationships
- JOIN and LEFT JOIN
- Support-focused data investigation
The exercises and investigations use a simple SaaS support model built around two related tables:
- user_id
- name
- ticket_id
- user_id
- issue_type
- priority
- status
- created_at
- resolution_minutes
users.user_id represents the primary key for users, while tickets.user_id acts as the foreign key connecting support tickets to the users who submitted them.
Creates the sample users and tickets tables and inserts simulated SaaS support records so the queries in this repository can be run against a consistent dataset.
Foundational SQL exercises covering querying, filtering, aggregation, and relational data.
01-select-basics.sql- basic data retrieval02-query-practice.sql- filtering, sorting, aliases, ranges, and CASE03-aggregate-practice.sql- aggregate functions, GROUP BY, and HAVING04-join-practice.sql- JOIN, LEFT JOIN, and key relationships
Practical investigations designed around common SaaS support questions.
Investigates the support queue to:
- identify open high-priority tickets
- prioritize recent open tickets
- connect tickets to affected users
- identify customers requiring attention
- find users with no ticket history
Analyzes support activity to:
- identify customers submitting repeated tickets
- find common issue types
- compare average resolution times
- identify issue categories with slower resolutions
- surface customers with multiple open cases
Examines ticket resolution performance to:
- identify slow resolutions
- analyze resolution-time ranges
- categorize tickets by resolution speed
- connect slow high-priority tickets to affected customers
This project demonstrates practical foundational SQL for technical support and application support work: understanding relational data, investigating customer issues, identifying patterns, and retrieving useful information from support records.