Get things done, without drama.

boringSQL stands for core belief: truly reliable tech stack. Databases? They've been around for decades and they're battle-tested. SQL? Over 50 years old and still one of the most in-demand programming languages[1]. PostgreSQL? It's a universe of its own. These aren't the latest trends, but they're the foundation of software that works - consistently. Master them through practical, hands-on learning that prepares you for real-world challenges.

📅 Upcoming Events

Join me at these PostgreSQL meetups to chat about databases, SQL, and all things data

RegreSQL: Regression Testing for PostgreSQL Queries

Stop deploying broken SQL queries. RegreSQL provides regression testing for PostgreSQL queries with performance baselines and automated warnings.

2025-11-13 Â· 10 min Â· Radim Marek

Beyond Start and End: PostgreSQL Range Types

Discover PostgreSQL range types for cleaner schemas and atomic conflict detection. Use tstzrange, daterange, and int4range to enforce data integrity with exclusion constraints.

2025-11-02 Â· 15 min Â· Radim Marek

PostgreSQL maintenance without superuser

Learn about PostgreSQL maintenance without superuser privileges. Predefined roles like pg_monitor and pg_maintain provide secure database administration.

2025-09-13 Â· 8 min Â· Radim Marek

Beyond the Basics of Logical Replication

Deep dive into advanced PostgreSQL logical replication: operational management, monitoring, and understanding logical decoding internals. Learn data copy strategies, manual sync, and fine-grained publication control with security best practices

2025-06-24 Â· 12 min Â· Radim Marek

First steps with Logical Replication in PostgreSQL

Learn the fundamentals of logical replication in PostgreSQL. Stream row-level changes, set up publishers and subscribers, and manage key components for scaling and integration.

2025-06-11 Â· 14 min Â· Radim Marek

PostgreSQL Service Connections

PostgreSQL service definition is a powerful feature that allows you to define and manage database connections in a secure and maintainable way.

2025-05-15 Â· 5 min Â· Radim Marek

Time to Better Know The Time in PostgreSQL

Understand how PostgreSQL handles time. This article explains TIMESTAMPTZ, TIMESTAMP, DATE, TIME, and INTERVAL so you can choose the right type and avoid common issues.

2025-04-06 Â· 11 min Â· Radim Marek

VIEW inlining in PostgreSQL

Understand how PostgreSQL optimizes queries through view inlining, what factors can prevent it, and best practices for designing views that perform efficiently.

2025-02-08 Â· 5 min Â· Radim Marek

DELETEs are difficult

Why are database DELETEs complex and inefficient? Uncover challenges from physical data removal to autovacuum, and find strategies for managing large deletions.

2024-11-23 Â· 11 min Â· Radim Marek

Text identifiers in PostgreSQL database design

Considering text identifiers in your database? Discover readability benefits and performance challenges, plus strategies for efficient use.

2024-11-09 Â· 10 min Â· Radim Marek