SQL data engineering interview problem. Difficulty: intermediate. Pattern: Window Functions. About 12 minutes. Part of the Pro drill bank.
Aggregate lb_orders revenue by year of order_date. Return: year total_revenue prev_year_revenue via LAG growth_pct: ROUND(100.0 * (total_revenue - prev_year_revenue) / prev_year_revenue, 2), NULL if no prior year Order by year.
Input: year | total_revenue 2023 | 500 2024 | 1380 Output: year | total_revenue | prev_year_revenue | growth_pct 2023 | 500 | NULL | NULL 2024 | 1380 | 500 | 176.0 Why this passes: Growth is (1380-500)/500 = 176%.
Topics: lakebench, sql, yoy, lag.
More SQL interview questions · All interview problems · Learn data engineering
Interview-style drill: YoY growth rate of total revenue.
Aggregate `lb_orders` revenue by year of `order_date`. Return: - `year` - `total_revenue` - `prev_year_revenue` via LAG - `growth_pct`: ROUND(100.0 * (total_revenue - prev_year_revenue) / prev_year_revenue, 2), NULL if no prior year Order by `year`.