SQL и базы данных

Курс SQL и базы данных — Prowid
Длительность курса
2 мес/ 16 уроков
Индивидуально
В мес 200 AZN
В группе
В мес 150 AZN
При оплате за весь курс в группе
15% скидка
Оплата по частям
50/50
По подписке
от 30 AZN в мес
В основе любого backend-приложения — база данных. В курсе вы научитесь проектировать реляционные базы и писать SQL-запросы в PostgreSQL и MySQL.

Идёт набор в новую группу — оставьте заявку, чтобы забронировать место

Или учитесь сами в личном кабинете → по подписке от 30 AZN в месяц

Программа курса

Введение в базы данных: реляционные и NoSQL
PostgreSQL, MySQL и MS SQL Server: различия, установка, DBeaver
Создание таблиц: типы данных и ограничения (constraints)
CRUD: SELECT, INSERT, UPDATE, DELETE
Фильтрация, сортировка и пагинация: WHERE, ORDER BY, LIMIT
Агрегатные функции и группировка: GROUP BY, HAVING
Объединение таблиц: виды JOIN
Подзапросы и CTE
Оконные функции (window functions)
Проектирование БД: ER-диаграммы, нормализация, связи
Индексы и оптимизация запросов (EXPLAIN)
Транзакции и ACID
Представления, хранимые процедуры и триггеры
Пользователи, права доступа и резервные копии
Безопасность: SQL-инъекции и параметризованные запросы
Знакомство с NoSQL: MongoDB и Redis
Финальный проект: база данных интернет-магазина
Как мы учим?

Этапы обучения

01

Вебинар

Студенты подключаются к уроку в прямом эфире. В конце каждого урока студентам отправляется видеозапись занятия.

02

Домашнее задание

Все задания основаны на теме, пройденной на вебинаре. Домашняя работа помогает закрепить материал и лучше его понять.

03

Работа с ментором

Преподаватель на связи с группой и во время обучения, и вне занятий. Возникающие вопросы решаются сразу.

04

Портфолио

За время курса вы выполните несколько проектов на разные темы — они покажут работодателям ваши навыки.

Самостоятельное обучение

Полная программа в личном кабинете

122 тем с теорией, примерами и практикой. Первые 4 — бесплатно, остальные — по подписке. Интерактивных уроков со слайдами и тренажёрами: 108.

Введение и рабочее окружениетем: 8
  1. Что такое база данных и СУБД
  2. Реляционная модель: таблицы, строки, столбцы и ключи
  3. Язык SQL: стандарт, диалекты и группы команд
  4. Первые запросы в SQLite без установки сервера
  5. Запуск PostgreSQL и MySQL в Docker
  6. Консольные клиенты psql и mysql
  7. Графические клиенты: DBeaver, pgAdmin и MySQL Workbench
  8. Учебная база «Интернет-магазин»: структура и загрузка
Таблицы, типы данных и ограничениятем: 12
  1. Создание базы данных, схемы и первой таблицы
  2. Числовые типы: целые, NUMERIC и числа с плавающей точкой
  3. Строковые типы: CHAR, VARCHAR, TEXT и кодировки
  4. Типы даты и времени: DATE, TIMESTAMP, TIMESTAMPTZ и INTERVAL
  5. Специальные типы: BOOLEAN, ENUM, UUID и JSON
  6. Первичный ключ и автоинкремент: IDENTITY, SERIAL, AUTO_INCREMENT
  7. NOT NULL и DEFAULT: обязательные поля и значения по умолчанию
  8. UNIQUE: уникальность значений и составные ограничения
  9. CHECK: проверка значений на уровне базы
  10. Внешние ключи: связываем таблицы
  11. ON DELETE и ON UPDATE: CASCADE, SET NULL, RESTRICT
  12. ALTER TABLE: изменение структуры существующей таблицы
Добавление, изменение и удаление данныхтем: 7
  1. INSERT: добавление одной и нескольких строк
  2. INSERT … SELECT, RETURNING и получение нового id
  3. UPDATE: безопасное изменение данных
  4. DELETE и TRUNCATE: удаление строк
  5. UPSERT: INSERT … ON CONFLICT и ON DUPLICATE KEY UPDATE
  6. Импорт и экспорт данных: CSV, COPY и LOAD DATA
  7. Проект: база данных библиотеки — схема и данные
Выборка данных: SELECT, фильтрация и сортировкатем: 9
  1. SELECT: столбцы, выражения и псевдонимы
  2. WHERE: операторы сравнения и логика AND, OR, NOT
  3. IN и BETWEEN: списки и диапазоны
  4. LIKE и ILIKE: поиск по шаблону
  5. NULL и трёхзначная логика: IS NULL и IS DISTINCT FROM
  6. ORDER BY: сортировка результатов
  7. LIMIT, OFFSET и пагинация
  8. DISTINCT и DISTINCT ON: уникальные строки
  9. Проект: запросы для каталога интернет-магазина
Выражения и встроенные функциитем: 7
  1. Числа в запросах: арифметика, округление и приведение типов
  2. Строковые функции: конкатенация, длина, регистр, подстроки
  3. Регулярные выражения и разбор строк
  4. Функции даты: текущее время, извлечение частей и форматирование
  5. Арифметика дат, интервалы и часовые пояса
  6. Условные выражения: CASE, COALESCE и NULLIF
  7. Проект: очистка и нормализация данных клиентов
Агрегация и группировкатем: 6
  1. Агрегатные функции: COUNT, SUM, AVG, MIN, MAX
  2. GROUP BY: группировка строк
  3. HAVING и логический порядок выполнения запроса
  4. Условная агрегация: FILTER и SUM(CASE …)
  5. STRING_AGG, GROUP_CONCAT и ARRAY_AGG: сбор значений в список
  6. ROLLUP, CUBE и GROUPING SETS: промежуточные итоги
Соединение таблиц: JOINтем: 9
  1. INNER JOIN: соединение связанных таблиц
  2. LEFT JOIN: все строки левой таблицы
  3. RIGHT JOIN и FULL OUTER JOIN
  4. CROSS JOIN и соединения по неравенству
  5. Self-join: соединение таблицы с самой собой
  6. Соединение трёх и более таблиц
  7. JOIN и GROUP BY: отчёты по связанным таблицам
  8. UPDATE и DELETE с JOIN
  9. Проект: запросы к базе библиотеки
Подзапросы, CTE и операции над множествамитем: 8
  1. UNION, INTERSECT и EXCEPT: операции над множествами
  2. Скалярные и коррелированные подзапросы
  3. Подзапросы с IN, ANY и ALL
  4. EXISTS и NOT EXISTS: проверка наличия связанных строк
  5. Подзапросы в FROM и LATERAL-соединения
  6. CTE: общие табличные выражения WITH
  7. Рекурсивные CTE: деревья, иерархии и последовательности
  8. Проект: аналитический отчёт по продажам
Оконные функциитем: 8
  1. Оконные функции: OVER и PARTITION BY
  2. ROW_NUMBER, RANK и DENSE_RANK: нумерация и рейтинги
  3. LAG и LEAD: сравнение с предыдущей и следующей строкой
  4. Накопительные итоги и скользящие средние
  5. Рамки окна: ROWS, RANGE, GROUPS и FIRST_VALUE/LAST_VALUE
  6. NTILE, PERCENT_RANK и перцентили: сегментация данных
  7. Приёмы с оконными функциями: серии, пропуски и сессии
  8. Проект: аналитика магазина с оконными функциями
Проектирование баз данныхтем: 9
  1. ER-диаграммы: сущности, атрибуты и связи
  2. Связи один-ко-многим и один-к-одному
  3. Связь многие-ко-многим и таблицы-связки
  4. Нормализация: аномалии и первая нормальная форма
  5. Вторая и третья нормальные формы
  6. Денормализация: когда осознанно дублировать данные
  7. Соглашения и типовые решения при проектировании схемы
  8. Миграции схемы: версионирование и безопасные изменения
  9. Проект: база данных блога с комментариями и тегами
Индексы и оптимизация запросовтем: 9
  1. Как работают индексы: B-tree и CREATE INDEX
  2. Составные индексы и порядок столбцов
  3. Покрывающие, частичные и функциональные индексы
  4. Другие типы индексов: Hash, GIN, GiST и BRIN
  5. Когда индекс не нужен или не работает
  6. EXPLAIN: как читать план запроса
  7. EXPLAIN ANALYZE: реальное время и статистика
  8. Оптимизация запросов: типовые приёмы и поиск медленных запросов
  9. Проект: ускоряем медленные запросы магазина
Транзакции и конкурентный доступтем: 7
  1. Транзакции: BEGIN, COMMIT, ROLLBACK и SAVEPOINT
  2. ACID: какие гарантии даёт база данных
  3. Аномалии конкурентного доступа: грязное чтение, потерянное обновление и другие
  4. Уровни изоляции и MVCC в PostgreSQL и MySQL
  5. Блокировки строк: SELECT FOR UPDATE, SKIP LOCKED и оптимистичная блокировка
  6. Дедлоки и диагностика блокировок
  7. Проект: оформление заказа и защита складских остатков от гонок
Представления, функции, процедуры и триггерытем: 6
  1. Представления (VIEW): сохранённые запросы
  2. Материализованные представления
  3. Пользовательские функции: CREATE FUNCTION
  4. Хранимые процедуры и PL/pgSQL: переменные, условия, циклы
  5. Триггеры: автоматические действия при изменении данных
  6. Проект: журнал аудита и автоматизация на триггерах
JSON и полнотекстовый поисктем: 5
  1. Запросы к JSON: операторы, пути и индексы
  2. Построение и изменение JSON, JSON_TABLE
  3. Полнотекстовый поиск в PostgreSQL: tsvector и tsquery
  4. Нечёткий поиск: pg_trgm и FULLTEXT в MySQL
  5. Проект: поиск и фильтры товаров по характеристикам
Администрирование: права, резервные копии, обслуживаниетем: 5
  1. Пользователи, роли и права: GRANT, REVOKE и RLS
  2. Резервное копирование: pg_dump, pg_restore и mysqldump
  3. Физические бэкапы, WAL и восстановление на момент времени
  4. Обслуживание и мониторинг: VACUUM, статистика, активные запросы
  5. Проект: права доступа и резервное копирование магазина
SQL в приложениях, NoSQL и финальный проекттем: 7
  1. SQL из кода: PHP PDO, Python и Node.js
  2. SQL-инъекции: как устроены атаки
  3. Защита от инъекций: параметризованные запросы
  4. ORM и query builder против чистого SQL
  5. NoSQL: MongoDB, Redis и когда SQL — не лучший выбор
  6. Финальный проект, часть 1: схема интернет-магазина
  7. Финальный проект, часть 2: отчёты, оптимизация и безопасность

Группа и индивидуальные занятия — это преподаватель, проверка заданий и сертификат. Подписка — материалы, тренажёры и прогресс в своём темпе, без обратной связи преподавателя.

Курс SQL и базы данных: как записаться

Заполните форму — сообщим дату старта ближайшей группы, расписание и условия оплаты. А можно сначала прийти на бесплатный пробный урок.

WhatsApp