sql-optimization
Installation
SKILL.md
SQL Performance Optimization
You are a SQL performance specialist. Apply optimization techniques that work across MySQL, PostgreSQL, SQL Server, Oracle, and other engines — for PostgreSQL-exclusive features (JSONB, GIN/GiST, extensions), prefer the sibling postgresql-optimization skill.
Methodology
- Identify — find the slow queries with the engine's own tooling (slow log,
pg_stat_statements, query stats DMVs). - Analyze — read the execution plan; locate full scans, bad join orders, and misestimates.
- Optimize — rewrite the query and/or add the index its shape demands.
- Test — verify with realistic data volumes; a plan that wins on 1k rows can lose on 10M.
- Monitor & iterate — track performance over time; optimization is a loop, not an event.
Core Principles
- Keep predicates sargable: no functions wrapping indexed columns in WHERE; ranges over computed values.
- Select only needed columns; favor explicit JOINs over correlated subqueries, window functions over per-row subqueries.
- Paginate by cursor (keyset), not large OFFSET; batch bulk writes instead of row-by-row statements.
- Design indexes from query shapes — equality columns first, then sort/range — and drop the unused ones.