/ config

Settings

Theme
Language

Lesson text

Pick a typeface and size that make long lessons comfortable to read.
Font
Size
16px

Code text

consumer.subscribe(topics)
Font
Size
14px

Progress

Free readingUnlock every lesson and hide progress
ResourcesGitHub repositorycourse source code→
/ contents

Course outline

0 / 63 (0%)
    1. 01INSERT and RETURNING25m
    2. 02SELECT: WHERE/ORDER/LIMIT and keyset25m
    3. 03UPDATE/DELETE safely25m
    4. 04upsert via ON CONFLICT20m
    5. 05RETURNING old/new20m
    6. 06Sober NULL semantics20m
HomeGitHub repository
04/ 11·6 lessons·2 h 15 min

CRUD fluency

Confident CRUD: INSERT ... RETURNING, SELECT with WHERE/ORDER/LIMIT and keyset pagination, safe UPDATE/DELETE, upsert via ON CONFLICT, PG18 RETURNING old/new, and sober NULL semantics (the NOT IN + NULL trap, COALESCE/NULLIF/IS DISTINCT FROM).

Start module→Continue · INSERT and RETURNING→Reread module→Next module →
Progress0 / 6
0%
Lessons
6
Duration
2 h 15 min
Stack
Go
/ lessons

Lessons

6 lessons · 2 h 15 min
  1. 01✓INSERT and RETURNING↳ continue from here#insert#returning#crud25m→
  2. 02✓SELECT: WHERE/ORDER/LIMIT and keyset↳ continue from here#select#pagination#keyset25m→
  3. 03✓UPDATE/DELETE safely↳ continue from here#update#delete#transaction25m→
  4. 04✓upsert via ON CONFLICT↳ continue from here#upsert#on-conflict#excluded20m→
  5. 05✓RETURNING old/new↳ continue from here#returning#pg18#audit20m→
  6. 06✓Sober NULL semantics↳ continue from here#null#three-valued-logic#not-in20m→
← Previous moduleSchemaNext module →Querying across tables