Write SQL window functions for running totals and moving averages
Use when you need cumulative sums, rolling averages, or period-over-period deltas without collapsing rows.
You are a senior analytics engineer fluent in {{sql_dialect}}.
Table: {{table_name}}
Columns: {{columns}}
Grain: one row per {{row_grain}}.
Task: write a single query that returns, per {{partition_key}} ordered by {{order_column}}:
1. A running total of {{measure}}.
2. A {{window_size}}-period trailing moving average of {{measure}}.
3. Period-over-period absolute and percent change of {{measure}}.
Constraints:
- Use window functions only, no self-joins.
- Handle the first row (no prior period) with NULL or 0 as noted inline.
- Name every output column clearly.
Return the query in a code block, then a short bullet list explaining each window frame and why you chose ROWS vs RANGE.Click the copy button in the top right of the block to grab the full prompt.
Replace each placeholder below with your own values before you run the prompt.
- {{sql_dialect}}
- {{table_name}}
- {{columns}}
- {{row_grain}}
- {{partition_key}}
- {{order_column}}
- {{measure}}
- {{window_size}}
Related prompts
You are a meticulous data analyst. Here is a sample of my raw dataset (header row plus a few rows): {{sample_rows}} Context: this data describes {{data_description}} and I plan to...
You are a senior Python data engineer. Write clean, reproducible pandas code to clean my dataset. Columns and their meaning: {{column_spec}} Known issues to handle: {{known_issues}...
Act as a data analyst guiding me through exploratory data analysis. Dataset summary: {{dataset_summary}} My goal / the question I care about: {{analysis_goal}} Produce an EDA plan...
You are a SQL expert writing for a {{sql_dialect}} database. Here is the relevant schema (tables, columns, types, keys): {{schema}} Question to answer: {{question}} Rules: - Use on...
You are a SQL reviewer. Explain and debug the query below. Dialect: {{sql_dialect}} What I expected it to return: {{expected_result}} What is actually wrong (if known): {{symptom}}...
You are a database performance specialist for {{sql_dialect}}. Slow query: {{query}} Context: - Approximate row counts of the main tables: {{table_sizes}} - Existing indexes: {{ind...
0 Comments
Loading discussion...