Files
supabase-postgres-best-prac…/skills/postgres-best-practices/rules/_template.md
2026-01-19 19:52:53 +00:00

1.0 KiB

title, impact, impactDescription, tags
title impact impactDescription tags
Clear, Action-Oriented Title (e.g., "Use Partial Indexes for Filtered Queries") MEDIUM 5-20x query speedup for filtered queries indexes, query-optimization, performance

[Rule Title]

[1-2 sentence explanation of the problem and why it matters. Focus on performance impact.]

Incorrect (describe the problem):

-- Comment explaining what makes this slow/problematic
CREATE INDEX users_email_idx ON users(email);

SELECT * FROM users WHERE email = 'user@example.com' AND deleted_at IS NULL;
-- This scans deleted records unnecessarily

Correct (describe the solution):

-- Comment explaining why this is better
CREATE INDEX users_active_email_idx ON users(email) WHERE deleted_at IS NULL;

SELECT * FROM users WHERE email = 'user@example.com' AND deleted_at IS NULL;
-- Only indexes active users, 10x smaller index, faster queries

[Optional: Additional context, edge cases, or trade-offs]

Reference: Postgres Docs