Содержание курса
1. Введение в реляционные базы данных и SQL
5 уроков
24
2
4м
0
Закрытый
1.1
Что такое реляционные БД и зачем они нужны
↗
20
2
4м 6с
0
Закрытый
1.2
История и роль PostgreSQL
↗
1
0
-
0
Закрытый
1.3
Основные понятия: таблицы, строки, столбцы
↗
1
0
-
0
Закрытый
1.4
SQL как язык запросов
↗
1
0
-
0
Закрытый
1.5
Установка PostgreSQL и первый запуск
↗
1
0
-
0
2. Основы SQL
5 уроков
8
2
0м
0
Закрытый
2.1
SELECT — выборка данных
↗
2
0
-
0
Закрытый
2.2
WHERE, AND, OR, IN, BETWEEN
↗
1
0
-
0
Закрытый
2.3
ORDER BY и LIMIT
↗
2
1
-
0
Закрытый
2.4
DISTINCT
↗
1
1
-
0
Закрытый
2.5
Работа с NULL
↗
2
0
-
0
3. Типы данных в PostgreSQL
5 уроков
1
1
0м
0
Закрытый
3.1
Числовые типы
↗
1
1
-
0
Закрытый
3.2
Строковые типы и текст
↗
0
0
-
0
Закрытый
3.3
Даты и время
↗
0
0
-
0
Закрытый
3.4
Boolean и ENUM
↗
0
0
-
0
Закрытый
3.5
JSON и JSONB — обзор
↗
0
0
-
0
4. Модификация данных
5 уроков
0
0
0м
0
Закрытый
4.1
INSERT
↗
0
0
-
0
Закрытый
4.2
UPDATE
↗
0
0
-
0
Закрытый
4.3
DELETE
↗
0
0
-
0
Закрытый
4.4
RETURNING
↗
0
0
-
0
Закрытый
4.5
UPSERT (ON CONFLICT)
↗
0
0
-
0
5. Агрегации и группировка
5 уроков
0
0
0м
0
Закрытый
5.1
COUNT, SUM, AVG, MIN, MAX
↗
0
0
-
0
Закрытый
5.2
GROUP BY
↗
0
0
-
0
Закрытый
5.3
HAVING
↗
0
0
-
0
Закрытый
5.4
Агрегации с условиями
↗
0
0
-
0
Закрытый
5.5
Практика аналитических запросов
↗
0
0
-
0
6. Связи между таблицами
5 уроков
0
0
0м
0
Закрытый
6.1
Первичные ключи
↗
0
0
-
0
Закрытый
6.2
Внешние ключи
↗
0
0
-
0
Закрытый
6.3
One-to-One, One-to-Many, Many-to-Many
↗
0
0
-
0
Закрытый
6.4
JOIN — INNER, LEFT, RIGHT
↗
0
0
-
0
Закрытый
6.5
FULL JOIN и SELF JOIN
↗
0
0
-
0
7. Подзапросы и CTE
5 уроков
0
0
0м
0
Закрытый
7.1
Подзапросы в SELECT
↗
0
0
-
0
Закрытый
7.2
Подзапросы в WHERE
↗
0
0
-
0
Закрытый
7.3
EXISTS и NOT EXISTS
↗
0
0
-
0
Закрытый
7.4
WITH (Common Table Expressions)
↗
0
0
-
0
Закрытый
7.5
Рекурсивные CTE
↗
0
0
-
0
8. Индексы
5 уроков
0
0
0м
0
Закрытый
8.1
Зачем нужны индексы
↗
0
0
-
0
Закрытый
8.2
B-tree индексы
↗
0
0
-
0
Закрытый
8.3
Hash, GIN и GiST
↗
0
0
-
0
Закрытый
8.4
Составные и частичные индексы
↗
0
0
-
0
Закрытый
8.5
Когда индексы вредны
↗
0
0
-
0
9. Производительность запросов
5 уроков
0
0
0м
0
Закрытый
9.1
EXPLAIN и EXPLAIN ANALYZE
↗
0
0
-
0
Закрытый
9.2
Планировщик запросов PostgreSQL
↗
0
0
-
0
Закрытый
9.3
Оптимизация медленных запросов
↗
0
0
-
0
Закрытый
9.4
N+1 проблема
↗
0
0
-
0
Закрытый
9.5
Практика оптимизации
↗
0
0
-
0
10. Транзакции и согласованность
5 уроков
0
0
0м
0
Закрытый
10.1
ACID
↗
0
0
-
0
Закрытый
10.2
BEGIN, COMMIT, ROLLBACK
↗
0
0
-
0
Закрытый
10.3
Уровни изоляции
↗
0
0
-
0
Закрытый
10.4
Deadlock и их причины
↗
0
0
-
0
Закрытый
10.5
Практика транзакций
↗
0
0
-
0
11. Ограничения и целостность данных
5 уроков
0
0
0м
0
Закрытый
11.1
NOT NULL и UNIQUE
↗
0
0
-
0
Закрытый
11.2
CHECK
↗
0
0
-
0
Закрытый
11.3
FOREIGN KEY — продвинуто
↗
0
0
-
0
Закрытый
11.4
Каскадные операции
↗
0
0
-
0
Закрытый
11.5
Best practices целостности
↗
0
0
-
0
12. Представления и функции
5 уроков
0
0
0м
0
Закрытый
12.1
VIEW и MATERIALIZED VIEW
↗
0
0
-
0
Закрытый
12.2
Пользовательские функции
↗
0
0
-
0
Закрытый
12.3
Хранимые процедуры
↗
0
0
-
0
Закрытый
12.4
Триггеры
↗
0
0
-
0
Закрытый
12.5
Когда использовать бизнес-логику в БД
↗
0
0
-
0
13. Работа с PostgreSQL в приложениях
5 уроков
0
0
0м
0
Закрытый
13.1
Подключение к БД
↗
0
0
-
0
Закрытый
13.2
Пулы соединений
↗
0
0
-
0
Закрытый
13.3
Подготовленные запросы
↗
0
0
-
0
Закрытый
13.4
SQL-инъекции и безопасность
↗
0
0
-
0
Закрытый
13.5
Миграции схемы
↗
0
0
-
0
14. Администрирование PostgreSQL
5 уроков
0
0
0м
0
Закрытый
14.1
Роли и права доступа
↗
0
0
-
0
Закрытый
14.2
Backup и restore
↗
0
0
-
0
Закрытый
14.3
Конфигурация PostgreSQL
↗
0
0
-
0
Закрытый
14.4
Мониторинг и логи
↗
0
0
-
0
Закрытый
14.5
Обновления и maintenance
↗
0
0
-
0
15. Архитектура и практики проектирования БД
5 уроков
0
0
0м
0
Закрытый
15.1
Нормализация
↗
0
0
-
0
Закрытый
15.2
Денормализация
↗
0
0
-
0
Закрытый
15.3
Проектирование схем под нагрузку
↗
0
0
-
0
Закрытый
15.4
Антипаттерны в SQL
↗
0
0
-
0
Закрытый
15.5
Реальные кейсы и разборы
↗
0
0
-
0