На одну сторінку

SQL і PostgreSQL: шпаргалка

Те, що варто тримати під рукою. Якщо рядок незрозумілий, повернись у відповідний урок курсу.

Відкрити курс: SQL і PostgreSQL

Читання даних

ЩоЯк
ВибратиSELECT id, name FROM users
ФільтрWHERE status = 'paid' AND total >= 100
СторінкаORDER BY created_at DESC LIMIT 20 OFFSET 40
З'єднатиJOIN users u ON u.id = o.user_id
ГрупиGROUP BY status HAVING COUNT(*) > 10

Зміна даних

ЩоЯк
ДодатиINSERT INTO users (email, name) VALUES ($1, $2) RETURNING id
ЗмінитиUPDATE users SET name = $1 WHERE id = $2
ТранзакціяBEGIN; … COMMIT;
ІндексCREATE INDEX ON orders (user_id)

Схема й складні запити

ЩоЯк
Обмеженняemail text NOT NULL UNIQUE
Зовнішній ключuser_id bigint REFERENCES users (id)
Іменований крокWITH spent AS (SELECT …) SELECT … FROM spent
План запитуEXPLAIN ANALYZE SELECT …
Створи або оновиON CONFLICT (email) DO UPDATE SET name = EXCLUDED.name
Номер у групіROW_NUMBER() OVER (PARTITION BY user_id ORDER BY created_at DESC)

Інші шпаргалки