Освойте один из основных инструментов работы с данными. Научитесь получать данные без помощи разработчиков. Сделайте шаг к профессии аналитика
Кому будет полезен курс
- Новичкам в аналитике
- Узнаете, как самостоятельно извлекать данные для обработки и анализа. Улучшите свои навыки и сможете получить повышение
- Маркетологам
- Научитесь оперативно получать данные, чтобы оценивать результаты, строить гипотезы и разрабатывать маркетинговые стратегии
- Менеджерам проектов и продуктов
- Сможете лучше понимать разработчиков и аналитиков и самостоятельно выгружать данные
- Финансистам, бухгалтерам и научным сотрудникам
- Научитесь выгружать данные и изучать их характеристики с помощью аналитических функций SQL
Программа курса
Введение в SQL. Установка ПО
Узнаете, зачем нужны базы данных (БД). Поймёте, как устроена система управления базами данных (СУБД) и познакомитесь с системой PostgreSQL. Узнаете, что такое схемы, отношения, атрибуты и домены. Установите и настроите необходимое ПО.
- Какие бывают источники данных
- Что такое IDE и DBeaver
- Создание подключений в DBeaver
- Установка локального сервера PostgreSQL Database Server
- Работа с *.backup и *.sql
- Интерфейс DBeaver
- Как создавать запросы
- ER-диаграмма
- Ограничения первичного и внешнего ключей
- Метаданные: использование и доступ
Работа с базами данных
Узнаете, что такое алиасы и как их использовать в работе с различными схемами и таблицами в одном запросе. Разберётесь в основных типах данных PostgreSQL. Узнаете, как фильтровать, сортировать и преобразовывать данные. Поймёте, как работать со строками и датами.
- Простые запросы
- Команда ROUND
- Команды ORDER BY, LIMIT, OFFSET
- Команда DISTINCT
- Логический порядок SELECT
- Условия WHERE
- Команды NULL и NOT NULL
- Kонкатенация
- Команды LIKE и ILIKE
- Методы работы со строками
- Методы работы с датами
Основы SQL
Напишите простые запросы и изучите сложные. Примените соединения (JOIN) и агрегатные функции (SUM, COUNT, AVG). Разберётесь в хронологии связывания таблиц. Освоите базовые команды: SELECT, WHERE, JOIN, ORDER BY, CASE, UNION, GROUP BY, HAVING. Узнаете, что такое подзапросы.
- Типы соединения: LEFT, RIGHT, INNER, FULL OUTER, CROSS JOIN
- JOIN при работе с уникальными и неуникальными значениями
- Команды UNION и EXCEPT
- Команда CASE
- Агрегация
- Группировка
- Подзапросы. Влияние положения на затрачиваемые ресурсы
Углубление в SQL
Узнаете, как работать с таблицами с помощью команд CREATE TABLE, ALTER TABLE, DROP TABLE. Освоите команды INSERT INTO, UPDATE TABLE, DELETE FROM. Поймёте, что такое внешние ключи.
- Создание схемы
- Создание отношений
- Формирование атрибутов, указание типов данных и ограничений
- Модификация структуры отношений
- Внешние ключи
- Внесение данных в отношение
- Изменение данных
- Удаление данных и отношений
Работа с PostgresSQL. Часть 1
Научитесь использовать агрегатные функции sum(), count(),avg(), min() и max() в рамках оконной функции. Примените аналитические функции lead(), lag(), dense_rank(). Узнаете, что такое обобщённые табличные выражения и рекурсивные запросы. Научитесь работать с каталогами.
- Оконные функции: простые запросы, накопление, LEAD и LAG
- Команда CTE
- Рекурсия. Применение с каталогами
- Команда GENERATE_SERIES
Работа с PostgresSQL. Часть 2
Узнаете, что такое представления. Поймёте, как ускорять запросы и использовать индексы. Начнёте ориентироваться в схемах запросов. Познакомитесь со сложными типами данных.
- Команда VIEW
- Команда MATERIALIZED VIEW
- Применение представлений в денормализации
- План запросов (EXPLAIN ANALYZE)
- Команда JSON
- Команда ARRAY
Продвинутый SQL
Научитесь поднимать, настраивать кластеры, шардировать (масштабировать) данные, писать хранимые процедуры и триггеры, понимать структуры данных, как они нормализуются и денормализуются. Погрузитесь в специфику проектирования БД и интеграцию с другими приложениями.
- Командная строка, интерактивный режим, резервное копирование, DCL, транзакции, блокировки, TCL
- Хранимые процедуры: циклы и условия, возврат скаляра и таблиц, raise exception, call. Триггеры событий, видимость, общий триггер
- Зависимости. Нормализация. Денормализация
- Основы проектирования: архитектурные модели, модели данных
- Масштабирование: горизонтальное и вертикальное шардирование, наследование, партиционирование. Репликация Master-Slave
- PostgreSQL Extensions: cube, tablefunc, PostGIS, file_fdw, postgres_fdw, pg_stat_statements
- Интеграция: API, Redis
Итоговая работа
Ключевые навыки
Базового уровня
- Понимание архитектуры и структуры баз данных
- Написание простых SQL-запросов для получения данных
- Написание джойнов для соединения таблиц
- Группировка и фильтрация данных
- Использование аналитических функций SQL для изучения характеристики данных
SQL PRO
- Подготовка данных для использования
- Шардирование
- Написание функций и триггеров
- Понимание физической и логической структуры данных