Lab 01: Window Functions
Step 1 — Setup: Create Sales Data
CREATE TABLE sales (
id SERIAL PRIMARY KEY,
salesperson VARCHAR(50),
region VARCHAR(50),
amount NUMERIC(10,2),
sale_date DATE
);
INSERT INTO sales (salesperson, region, amount, sale_date) VALUES
('Alice', 'East', 1200.00, '2024-01-05'),
('Bob', 'East', 950.00, '2024-01-10'),
('Carol', 'West', 1500.00, '2024-01-03'),
('Dave', 'West', 800.00, '2024-01-15'),
('Eve', 'East', 1200.00, '2024-01-20'),
('Frank', 'West', 2000.00, '2024-01-22'),
('Grace', 'East', 600.00, '2024-01-25'),
('Heidi', 'West', 1800.00, '2024-01-28');Step 2 — ROW_NUMBER, RANK, DENSE_RANK, NTILE
Step 3 — LAG and LEAD: Row Navigation
Step 4 — Running Totals and Moving Averages
Frame
Meaning
Step 5 — FIRST_VALUE and LAST_VALUE
Step 6 — Named Windows with WINDOW Clause
Step 7 — Practical: Top-N per Group
Step 8 — Capstone: Sales Performance Dashboard
Summary
Function
Purpose
Ties Handling
Last updated
