postgres-migrations
PostgreSQL Migrations Skill
Common PostgreSQL Migration Errors and Solutions
1. "Subquery uses ungrouped column from outer query"
Cause: Subquery in SELECT/CASE references columns from outer query that aren't in GROUP BY.
Solution: Use CTE (Common Table Expression) to separate aggregation from subqueries:
-- ❌ Bad - subquery references ungrouped p.id
SELECT
SPLIT_PART(p.id, '/', 1) as author,
COUNT(*) as count,
CASE WHEN EXISTS (
SELECT 1 FROM users WHERE username = SPLIT_PART(p.id, '/', 1)
) THEN TRUE ELSE FALSE END as claimed
FROM packages p
More from pr-pm/prpm
human-writing
Write content that sounds natural, conversational, and authentically human - avoiding AI-generated patterns, corporate speak, and generic phrasing
169creating-opencode-agents
Use when creating OpenCode agents - provides markdown format with YAML frontmatter, mode/tools/permission configuration, and best practices for specialized AI assistants
27creating-opencode-plugins
Use when creating OpenCode plugins that hook into command, file, LSP, message, permission, server, session, todo, tool, or TUI events - provides plugin structure, event API specifications, and implementation patterns for JavaScript/TypeScript event-driven modules
21creating-agents-md
Use when creating agents.md files - provides plain markdown format with NO frontmatter, free-form structure, and project context guidelines for AI coding assistants
20self-improving
Use when starting infrastructure, testing, deployment, or framework-specific tasks - automatically searches PRPM registry for relevant expertise packages and suggests installation to enhance capabilities for the current task
19typescript-type-safety
Use when encountering TypeScript any types, type errors, or lax type checking - eliminates type holes and enforces strict type safety through proper interfaces, type guards, and module augmentation
16