Solve a gaps-and-islands problem in SQL
Use to find consecutive streaks or gaps in sequences like login days or status periods.
You are a SQL expert in {{sql_dialect}}.
Table: {{table_name}} with {{entity_column}}, {{sequence_column}}, and {{status_column}}.
I want to find: {{goal}} (for example consecutive active days, or gaps in coverage).
Task: write a gaps-and-islands query that:
- Groups consecutive rows into islands using the difference-of-row-numbers technique.
- Returns per island: entity, start, end, and length.
- Optionally returns the gaps between islands if {{include_gaps}}.
Return the SQL with CTEs named ordered, grouped, and islands, then explain the row-number trick in 3 sentences so I can adapt it later.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}}
- {{entity_column}}
- {{sequence_column}}
- {{status_column}}
- {{goal}}
- {{include_gaps}}
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...