Skip to the SQL console
Pgnautfleet training command

Fleet training command

Learn PostgreSQL properly.
In your browser. For free.

A real PostgreSQL 18 server compiled to WebAssembly runs inside this tab. Nothing is sent anywhere, there is no account, and every lesson gets its own throwaway database — so you can break things on purpose. The path does not stop at joins: it goes through window frames, recursive CTEs, JSONB, upserts, query plans and PL/pgSQL.

begin training →0 / 41 objectives cleared

Available now

  1. 01

    Signal Acquisition

    Pull rows out of a table and bend them to your will.

    0/7
  2. 02

    Instruments & Units

    Text, numbers, dates and the casts between them.

    0/4
  3. 03

    Fleet Statistics

    Collapse many rows into one number — correctly.

    0/5
  4. 04

    Docking Procedures

    Combine tables without losing rows you meant to keep.

    0/5
  5. 05

    Nested Transmissions

    Queries inside queries, and the set algebra between them.

    0/5
  6. 06

    Route Plotting

    Name your intermediate results — then let them call themselves.

    0/5
  7. 07

    Sensor Windows

    Aggregate without collapsing — the chapter the free courses skip.

    0/6
  8. 08

    Hull Design

    Schemas that make bad data impossible.

    0/4

Rest of the path · lessons in authoring

  1. 09

    Pattern Recognition

    The analytical shapes that recur in every real job.

    • · running totals and moving averages
    • · top-N per group
    • · gaps and islands
    • · deduplication
    • · period-over-period comparison
  2. 10

    Cargo Manifests

    Semi-structured data, natively.

    • · JSONB operators -> ->> #>
    • · jsonb_path_query and containment @>
    • · jsonb_array_elements and unnest
    • · arrays and ranges
    • · GIN indexes for JSONB and arrays
  3. 11

    Writing to the Log

    Changing data without losing any.

    • · INSERT, UPDATE, DELETE
    • · RETURNING
    • · ON CONFLICT upserts
    • · MERGE
  4. 12

    Engine Efficiency

    Why the query is slow, read from the plan itself.

    • · reading EXPLAIN and EXPLAIN ANALYZE
    • · seq scan vs index scan vs bitmap heap scan
    • · btree, GIN, partial and expression indexes
    • · statistics and row estimates
  5. 13

    Airlock Protocol

    Transactions, and what isolation actually buys you.

    • · ACID and BEGIN/COMMIT/ROLLBACK
    • · savepoints
    • · isolation levels and the anomalies each prevents
    • · locking and deadlock
  6. 14

    Ship Automation

    Logic that lives in the database.

    • · SQL functions
    • · PL/pgSQL: variables, control flow, loops
    • · triggers and trigger functions
  7. 15

    Postgres Proper

    The features that are the reason to pick Postgres.

    • · full-text search with tsvector and tsquery
    • · table partitioning
    • · row-level security
    • · extensions and the wider ecosystem