SQL Query Generator skill
Generate SQL queries from natural language descriptions.
by phuryn·MIT license·★ 26,557 Stars on the repo·GitHub ↗
Use now
npx degit phuryn/pm-skills/pm-data-analytics/skills/sql-queries#main ~/.claude/skills/sql-queriesChecked ·commit main
Files of SQL Query Generator
SKILL.md
Show the full text88 lines
SQL Query Generator
Purpose
Transform natural language requirements into optimized SQL queries across multiple database platforms. This skill helps product managers, analysts, and engineers generate accurate queries without manual syntax work.
How It Works
Step 1: Understand Your Database Schema
- If you provide a schema file (SQL, documentation, or diagram description), I will read and analyze it
- Extract table names, column definitions, data types, and relationships
- Identify primary keys, foreign keys, and indexing strategies
Step 2: Process Your Request
- Clarify the exact data you need to retrieve or analyze
- Confirm the SQL dialect (BigQuery, PostgreSQL, MySQL, Snowflake, etc.)
- Ask for any additional requirements (filters, aggregations, sorting)
Step 3: Generate Optimized Query
- Write efficient SQL that leverages your database structure
- Include comments explaining complex logic
- Add performance considerations for large datasets
- Provide alternative approaches if applicable
Step 4: Explain and Test
- Explain the query logic in plain English
- Suggest how to test or validate results
- Offer tips for performance optimization
- If you want, generate a test script or sample data
Usage Examples
Example 1: Query from Schema File
Upload your database_schema.sql file and say:
"Generate a query to find users who signed up in the last 30 days
and had at least 5 active sessions"
Example 2: Query from Diagram Description
"Here's my database: Users table (id, email, created_at), Sessions table
(id, user_id, timestamp, duration). Generate a query for average session
duration per user in January 2026."
Example 3: Complex Analysis Query
"Create a BigQuery query to analyze our revenue by region and customer tier,
including year-over-year growth rates."
Key Capabilities
- Multi-Dialect Support: Works with BigQuery, PostgreSQL, MySQL, Snowflake, SQL Server
- File Reading: Reads schema files, SQL dumps, and data documentation
- Query Optimization: Suggests indexes, partitioning, and performance improvements
- Explanation: Breaks down queries for learning and documentation
- Testing: Can generate test queries and sample data scripts
- Script Execution: Create executable SQL scripts for your database
Tips for Best Results
- Provide context: Share your database schema or structure
- Be specific: Clearly describe what data you need and any filters
- Mention database: Specify which SQL dialect you're using
- Include constraints: Mention data volume, time ranges, and performance needs
- Request format: Ask for the query result format if you need specific output
Output Format
You'll receive:
- SQL Query: Production-ready SQL code with comments
- Explanation: What the query does and how it works
- Performance Notes: Optimization tips and considerations
- Test Script (if requested): Sample data and validation queries
Further Reading
| 1 | |
| 2 | name sql-queries |
| 3 | description "Generate SQL queries from natural language descriptions. Supports BigQuery, PostgreSQL, MySQL, and other dialects. Reads database schemas from uploaded diagrams or documentation. Use when writing SQL, building data reports, exploring databases, or translating business questions into queries." |
| 4 | |
| 5 | |
| 6 | # SQL Query Generator |
| 7 | |
| 8 | ## Purpose |
| 9 | Transform natural language requirements into optimized SQL queries across multiple database platforms. This skill helps product managers, analysts, and engineers generate accurate queries without manual syntax work. |
| 10 | |
| 11 | ## How It Works |
| 12 | |
| 13 | ### Step 1: Understand Your Database Schema |
| 14 | If you provide a schema file (SQL, documentation, or diagram description), I will read and analyze it |
| 15 | Extract table names, column definitions, data types, and relationships |
| 16 | Identify primary keys, foreign keys, and indexing strategies |
| 17 | |
| 18 | ### Step 2: Process Your Request |
| 19 | Clarify the exact data you need to retrieve or analyze |
| 20 | Confirm the SQL dialect (BigQuery, PostgreSQL, MySQL, Snowflake, etc.) |
| 21 | Ask for any additional requirements (filters, aggregations, sorting) |
| 22 | |
| 23 | ### Step 3: Generate Optimized Query |
| 24 | Write efficient SQL that leverages your database structure |
| 25 | Include comments explaining complex logic |
| 26 | Add performance considerations for large datasets |
| 27 | Provide alternative approaches if applicable |
| 28 | |
| 29 | ### Step 4: Explain and Test |
| 30 | Explain the query logic in plain English |
| 31 | Suggest how to test or validate results |
| 32 | Offer tips for performance optimization |
| 33 | If you want, generate a test script or sample data |
| 34 | |
| 35 | ## Usage Examples |
| 36 | |
| 37 | **Example 1: Query from Schema File** |
| 38 | |
| 39 | Upload your database_schema.sql file and say: |
| 40 | "Generate a query to find users who signed up in the last 30 days |
| 41 | and had at least 5 active sessions" |
| 42 | |
| 43 | |
| 44 | **Example 2: Query from Diagram Description** |
| 45 | |
| 46 | "Here's my database: Users table (id, email, created_at), Sessions table |
| 47 | (id, user_id, timestamp, duration). Generate a query for average session |
| 48 | duration per user in January 2026." |
| 49 | |
| 50 | |
| 51 | **Example 3: Complex Analysis Query** |
| 52 | |
| 53 | "Create a BigQuery query to analyze our revenue by region and customer tier, |
| 54 | including year-over-year growth rates." |
| 55 | |
| 56 | |
| 57 | ## Key Capabilities |
| 58 | |
| 59 | **Multi-Dialect Support**: Works with BigQuery, PostgreSQL, MySQL, Snowflake, SQL Server |
| 60 | **File Reading**: Reads schema files, SQL dumps, and data documentation |
| 61 | **Query Optimization**: Suggests indexes, partitioning, and performance improvements |
| 62 | **Explanation**: Breaks down queries for learning and documentation |
| 63 | **Testing**: Can generate test queries and sample data scripts |
| 64 | **Script Execution**: Create executable SQL scripts for your database |
| 65 | |
| 66 | ## Tips for Best Results |
| 67 | |
| 68 | **Provide context**: Share your database schema or structure |
| 69 | **Be specific**: Clearly describe what data you need and any filters |
| 70 | **Mention database**: Specify which SQL dialect you're using |
| 71 | **Include constraints**: Mention data volume, time ranges, and performance needs |
| 72 | **Request format**: Ask for the query result format if you need specific output |
| 73 | |
| 74 | ## Output Format |
| 75 | |
| 76 | You'll receive: |
| 77 | **SQL Query**: Production-ready SQL code with comments |
| 78 | **Explanation**: What the query does and how it works |
| 79 | **Performance Notes**: Optimization tips and considerations |
| 80 | **Test Script** (if requested): Sample data and validation queries |
| 81 | |
| 82 | |
| 83 | |
| 84 | ### Further Reading |
| 85 | |
| 86 | [The Product Analytics Playbook: AARRR, HEART, Cohorts & Funnels for PMs] |
| 87 | [How to Become a Technology-Literate PM] |
| 88 |
Discussion
Alternatives
"Explain It Like I Built It" Technical Documentation for Non-Technical FoundersA prompt system for generating plain-language project documentation. This prompt generates a [FORME].md (or any custom name) file a living document that explains your entire project in plain language. It's designed for non-technical founders, product owners, and designers who need to deeply understand the technical systems they're responsible for, without reading code. The document doesn't dumb things down. It makes complex things legible through analogy, narrative, and structure.
Turn your rambling notes into a clear briefPaste your messy brain-dump or voice-note and get back a tidy brief: your goal, your decisions, what you changed your mind about, and the guesses you need to correct.Write an emailWrite a ${tone:professional|friendly} email to ${recipient} about ${topic}.
Summarize meetingSummarize a meeting transcript into structured notes with date, participants, topic, key decisions, summary points, and action items. Use when processing meeting recordings, creating meeting notes, writing meeting minutes, or recapping discussions.
Browse more free Claude skills or everything in Operations.