Lab 02: CTEs & Recursive Queries
Step 1 — Setup: Employee Hierarchy
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(50),
manager_id INT,
department VARCHAR(50),
salary NUMERIC(10,2)
);
INSERT INTO employees VALUES
(1, 'CEO', NULL, 'Executive', 200000),
(2, 'CTO', 1, 'Tech', 150000),
(3, 'CFO', 1, 'Finance', 140000),
(4, 'VP Eng', 2, 'Tech', 120000),
(5, 'VP Product', 2, 'Tech', 115000),
(6, 'Sr Dev', 4, 'Tech', 90000),
(7, 'Jr Dev', 4, 'Tech', 70000),
(8, 'Sr Analyst', 3, 'Finance', 85000),
(9, 'Analyst', 3, 'Finance', 65000),
(10, 'Designer', 5, 'Tech', 75000);Step 2 — Simple CTE
Step 3 — Multiple CTEs
Step 4 — Recursive CTE: Org Chart Traversal
Step 5 — Recursive CTE: Find All Reports Under a Manager
Step 6 — CTE vs Subquery Performance
Step 7 — Materialized CTEs
Step 8 — Capstone: Category Tree with Aggregated Budgets
Summary
Concept
Syntax
Use Case
Last updated
