Курсы по SQL
Кому подойдёт этот курс
- Маркетологам
- Вы научитесь анализировать данные о клиентах без помощи разработчиков и аналитиков и сможете принимать правильные маркетинговые решения.
- Аналитикам
- Вы изучите особенности различных баз данных, научитесь делать запросы, сможете работать над сложными задачами и станете более ценным сотрудником.
- Менеджерам и владельцам бизнеса
- Вы научитесь получать данные из баз, анализировать их и использовать для принятия решений о будущем продукта.
Чему вы научитесь
- Пользоваться популярными СУБД
- Узнаете особенности работы в MySQL, PostgreSQL, MS SQL.
- Писать запросы к базам данных
- Освоите основные операторы SQL: SELECT, INSERT, UPDATE, DELETE — и сможете запрашивать, загружать, обновлять и удалять данные.
- Выполнять операции над данными
- Научитесь фильтровать, сортировать, группировать и объединять данные из разных таблиц, а также применять функции SQL.
- Готовить данные для Excel
- Научитесь подготавливать данные для сводных таблиц и графиков в Excel.
Программа курса
- Анализ данных и SQL
- Узнаете, как SQL используется для решения аналитических задач. Сделаете первые запросы в тестовой среде с оператором SELECT.
- Оператор SELECT — выбор колонок
- Научитесь выбирать колонки из таблицы и проводить вычислениях в них.
- Оператор SELECT — фильтрация строк
- Узнаете о фильтрах SQL, научитесь комбинировать фильтры для числовых и строковых полей.
- Сортировка и функции для работы со строками
- Научитесь сортировать данные и использовать математические функции, функции работы со строками и датами.
- Функции для работы с датой и временем. Часть 1
- Узнаете, как работать с системными датой и временем. Изучите составные части и форматы даты и времени. Научитесь проводить операции над датой и временем в запросах.
- Функции для работы с датой и временем. Часть 2
- Научитесь работать с условиями равенства для полей даты и времени. Сможете преобразовывать строки в дату и время. Научитесь создавать значения типа даты и времени.
- Агрегатные функции и группировка
- Научитесь использовать агрегатные функции и группировать данные.
- Объединение данных из разных таблиц
- Освоите вложенные запросы, оператор JOIN, узнаете об особенностях объединения таблиц, изучите значение NULL и объединение с помощью UNION.
- Модификация таблиц
- Узнаете, как создавать таблицы, загружать в них данные и модифицировать их.
- Оконные функции
- Освоите оконные функции: OVER, LAG, LEAD, RANK, row_number, научитесь добавлять партиции.
- Подготовка данных для Excel
- Научитесь готовить данные для сводных таблиц и графиков Excel, объединять данные по шкале времени, использовать оператор CASE.
- Дипломная работа. Подготовка данных для анализа
- Необходимо будет по заданию заказчика составить необходимые запросы, используя фильтрацию, группировку, объединение данные и различные функции, выгрузить данные из базы и подготовить их для анализа в Excel.
Кому подойдёт этот курс
- Новичкам в программировании
- Познакомитесь с языком SQL и поймёте, как работают базы данных. Научитесь управлять данными и работать с аналитическими функциями SQL. Разработаете свой первый корпоративный сервис и подготовитесь к старту успешной карьеры программиста.
- Специалистам техподдержки
- Научитесь оптимизировать SQL-запросы и автоматизировать рутинные задачи с помощью PL/SQL. С помощью новых навыков сможете претендовать на более высокую зарплату или перейти на позицию разработчика баз данных.
- Junior-разработчикам
- Навык работы с SQL — один из ключевых для любого программиста. Вы познакомитесь с диалектом PL/SQL, научитесь писать сложные запросы и проектировать надёжные базы данных. Расширите спектр навыков и сможете брать в работу более дорогостоящие проекты.
Чему вы научитесь
- Писать запросы к базам данных
- Познакомитесь с основными возможностями SQL, узнаете, как строить сложные аналитические отчёты и какие есть рецепты приготовления данных.
- Создавать интерфейсы в Oracle Apex
- Научитесь визуализировать данные и узнаете, как создать веб-приложение и настроить рабочее место в среде Oracle Apex.
- Работать с данными
- Научитесь делать многотабличные выборки, создавать и связывать таблицы, группировать, фильтровать, анализировать и агрегировать данные с помощью функций sum, avg, count, having и других.
- Создавать свои базы данных
- Разберётесь в объектах баз данных, научитесь писать программы для их обработки и узнаете, как спроектировать собственные базы данных под разные цели.
Программа курса
- Введение
- Узнаете, что такое базы данных и зачем они нужны. Научитесь создавать свои структуры данных, установите сервер Oracle. Познакомитесь с инструментом Oracle Apex и сможете с его помощью создавать приложения и визуализировать данные.
- Первые шаги в SQL
- Изучите расширенные возможности Apex, познакомитесь с основными операторами SQL и напишете свои первые запросы к базе данных.
- Агрегатные функции
- Научитесь суммировать данные, высчитывать среднее и определять количество строк с помощью функций sum, avg, count и других.
- Агрегатные функции по аналитическим разрезам
- Продолжите знакомиться с функциями: научитесь высчитывать минимальное и максимальное значения, группировать и фильтровать данные с помощью функций max, min, distinct, having и других.
- Аналитические функции
- Познакомитесь с аналитическими функциями на примере row_number () и lead/lag. Сможете применять аналитические функции по группам и выбирать данные из «окна».
- Объединение данных
- Научитесь объединять и вычитать наборы данных, соединять таблицы, обогащать данные.
- Присоединение таблиц
- Узнаете, как соединить несколько таблиц и работать с нормализованными представлениями данных.
- Типы данных
- Узнаете, какие типы данных существуют, в каких случаях их применять и как преобразовывать.
- Объекты базы данных
- Познакомитесь с объектами базы данных, научитесь распределять данные по ролям, создавать схемы и представлять данные в удобном для пользователя виде.
- Изменение данных
- Узнаете, как создать, изменить, удалить данные или отменить действие, если случайно удалили лишнее.
- Секционирование и план запроса
- Узнаете, как разбить большую таблицу на удобные секции, и научитесь работать с данными внутри них. Познакомитесь с оптимизатором Oracle и сможете проверять и изменять план запроса.
- Простейшие блоки
- Разберётесь в процедурном расширении PL/SQL, научитесь писать анонимные блоки и выводить информацию на экран. Познакомитесь с операторами ветвлений if/else и напишете свой первый анонимный блок с ветвлениями.
- Циклы
- Узнаете, как записывать и хранить информацию в переменных, как автоматизировать рутинную работу, и научитесь работать с циклами for и while.
- Типы PL/SQL-объектов
- Научитесь создавать и вызывать процедуры и функции, передавать и получать параметры, создавать пакеты.
- Использование PL/SQL
- Разберётесь в системных и пользовательских исключениях и научитесь их обрабатывать. Узнаете, как работать с курсорами и обходить ошибку запуска DDL.
- PL/SQL-таблицы
- Научитесь складывать и преобразовывать данные в коллекции и работать с конвейерными функциями. Узнаете, как обрабатывать большие объекты данных (CLOB).
Кому будет полезен курс
- Новичкам в аналитике
- Узнаете, как самостоятельно извлекать данные для обработки и анализа. Улучшите свои навыки и сможете получить повышение
- Маркетологам
- Научитесь оперативно получать данные, чтобы оценивать результаты, строить гипотезы и разрабатывать маркетинговые стратегии
- Менеджерам проектов и продуктов
- Сможете лучше понимать разработчиков и аналитиков и самостоятельно выгружать данные
- Финансистам, бухгалтерам и научным сотрудникам
- Научитесь выгружать данные и изучать их характеристики с помощью аналитических функций 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
- Подготовка данных для использования
- Шардирование
- Написание функций и триггеров
- Понимание физической и логической структуры данных
Чему Вы научитесь
- Проектировать базы данных;
- Писать SQL-запросы;
- Устанавливать и работать с СУБД MySql;
- Использовать MySql Workbench.
Программа курса
Урок 1. Реляционные базы данных
Чем отличается БД от СУБД; какие базы данных называются реляционными; обзор современных СУБД.
Урок 2. Установка СУБД
Установка СУБД MySql и графического приложения Mysql Workbench.
Урок 3. Проектирование базы данных, нормальные формы
Проектирование данных в Excel; нормальные формы; первичный ключ.
Урок 4. SQL-команда CREATE
Создание таблиц в графическом интерфейсе MySql Workbench; команда CREATE; типы данных; работа в консоли.
Урок 5. SQL-команда INSERT
Заполнение таблиц данными с помощью графического интерфейса; команда INSERT; AUTO INCREMENT.
Урок 6. SQL-команды SELECT и WHERE
Получение и фильтрация данных с помощью SQL-команд SELECT и WHERE; проверка на NULL; фильтрация данных по нескольким условиям.
Урок 7. SQL-команды DISTINCT, ORDER BY, LIMIT
Получение и фильтрация данных с помощью SQL-команд DISTINCT и LIMIT; сортировка с помощью команды ORDER BY.
Урок 8. SQL-команды DELETE и UPDATE
Обновление и удаление данных с помощью SQL-команд DELETE и UPDATE; фильтрация данных с помощью WHERE IN.
Урок 9. Согласованность данных
Понятие согласованности или консистентности данных.
Урок 10. Внешний ключ
Понятие внешнего ключа и ограничений на значения столбцов; FOREIGN KEY CONSTRAINTS.
Урок 11. Создание таблиц с отношением “многие ко многим”
Добавление корзины в базу данных интернет-магазина.
Урок 12. Составной первичный ключ
Использование составного первичного ключа при проектировании таблицы с отношением “многие ко многим”.
Урок 13. Объединение данных из нескольких таблиц
Получение данных из нескольких взаимосвязанных таблиц; несостоятельность подхода с использованием нескольких SELECT-ов.
Урок 14. Оператор INNER JOIN
Объединение данных из нескольких таблиц с помощью оператора INNER JOIN.
Урок 15. Операторы LEFT JOIN, RIGHT JOIN
Объединение данных из нескольких таблиц с помощью операторов LEFT JOIN и RIGHT JOIN.
Урок 16. Оператор UNION
Объединение результатов нескольких SQL-запросов с помощью оператора UNION.
Урок 17. Агрегирующие функции
Агрегирующие функции COUNT, SUM, MIN, MAX.
Урок 18. Оператор GROUP BY
Группировка выбранного набора строк с использованием оператора GROUP BY.
Урок 19. Индексы
Фильтрация в GROUP BY с использованием HAVING; увеличение скорости выполнения запросов с использованием индексов.
Урок 20. Транзакции
Понятие транзакции; оператор TRANSACTION; требования ACID к транзакционной системе.
Для кого этот курс
- Аналитик
- Сможете брать серьезные проекты и решать сложные задачи. Научим писать продвинутые SQL-запросы и объясним принципы и нюансы работы с разными базами данных
- Маркетолог
- Сможете анализировать поведение пользователей с помощью данных из базы. Научим получать данные самостоятельно, без помощи разработчиков
- Продакт-менеджер
- Сможете на основе данных принимать решения по продукту. Научим получать данные из базы и анализировать их
Программа курса
Базовый уровень
Программа подойдет новичкам, кто впервые изучает SQL или тем, кто хочет привести свои знания в систему
Стартовый модуль: Виды баз данных
Вы познакомитесь с SQL, Metabase и базами данных.
1 модуль. Основы SQL
Научитесь получать все данные из таблицы, фильтровать строки, сортировать данные, ограничивать выбор
2 модуль: Агрегатные функции
Будете работать с повторяющимися значениями, запросами агрегатных функций, группировкой и фильтрами агрегированных данных.
3 модуль. Соединение таблиц
Сможете объединить таблицы: по ключу, с помощью оператора JOIN (5 видов). Агрегатные функции в соединениях таблиц.
Практический кейс по юнит-экономике
4 модуль. Сложные объединения
Продолжите объединять таблицы уже с помощью нескольких операторов UNION, использования Except, Intersect
5 модуль. Подзапросы
Научитесь делать подзапросы в WHERE, FROM, SELECT и использовать CTE.
6 модуль. Условные операторы
Разберетесь в условиях получения данных из базы данных, и в работе операторов CASE, COALESCE, NULLIF.
Финальный проект.
Получите рабочую задачу, выберете подходящие функции и сформулируете необходимые запросы на языке SQL.
Продвинутый уровень
Программа подойдет тем, кому необходимо изучить продвинутые инструменты SQL для работы с базами данных
Стартовый модуль:
Разберетесь, какие задачи стоят перед SQL-аналитиками и как программа курса решает эти задачи
1 модуль. Реляционные СУБД
Разберетесь в роли СУБД, узнаете, что такое денормализация и приведете базу данных в рабочий вид
2 модуль: Работа с данными различных типов
Изучите особенности работы с датами, числами, строками, JSON, XML и регулярные выражения
3 модуль. Оконные функции
Научитесь использовать общий синтаксис оконной функции, ранжировать данные с её помощью, применять агрегатные функции внутри окон
4 модуль. Виды объектов в СУБД
Узнаете, какие существуют объекты БД
Научитесь писать SQL-запросы с основными командами DDL и изменять структуру таблицы
5 модуль. Создание процедур и функций для работы с данными
Создадите свою функцию, создадите и вызовите хранимую процедуру.
6 модуль. БОНУС. Системные таблицы и оптимизация запросов
Установите PG Admin локально на свой компьютер. Создадите, измените и развернете из дампа свою БД. Научитесь анализировать и оптимизировать запросы.
Финальный проект.
Доработаете существующую БД под несколько бизнес-задач
Кому подойдет курс
- Новичкам в IT
Разовьете навыки работы с данными и сделаете первый шаг в востребованной профессии. - Руководителям
Узнаете, как самостоятельно анализировать данные, и сможете принимать более точные эффективные решения. - Маркетологам
Научитесь извлекать информацию из баз данных и глубже анализировать поведение пользователей. - Начинающим аналитикам
Изучите нюансы работы с базами данных и сможете помогать бизнесу принимать эффективные решения на основе данных. - Начинающим разработчикам и тестировщикам
Узнаете, как улучшить сайт или приложение через грамотную работу с базами данных.
Чему вы научитесь
- Проводить аналитические исследования и находить инсайты
- Фильтровать, сортировать, группировать и объединять данные из разных таблиц
- Писать запросы к базам данных
- Вычислять показатели из большого объема информации
Программа курса
Модуль 1
Работа с нативными данными
Расскажем, почему SQL — золотой ключ для всех, кто работает с данными. Освоите базовые типы данных и операции с ними, научитесь получать данные по условиям и очищать, генерировать новые признаки.
- Базовые запросыНаучитесь выбирать и фильтровать данные с помощью операторов SELECT, FROM, WHERE. Узнаете, как сортировать данные и использовать условия.
Домашнее задание - Генерация новых признаков и очистка данных
Разберетесь, как работать с оператором CASE. Узнаете, как создавать новые признаки и фильтровать по ним.
Домашнее задание: подготовить выборку данных для обучения рекомендательной модели интернет-магазина.
Проверочная работа по модулю: выгрузить данные для отдела маркетинга по определенным условиям.
Модуль 2
Преобразование данных
Узнаете, как преобразовывать данные и выводить агрегированные показатели, объединять таблицы и создавать сложные подзапросы. Завершите модуль исследовательским проектом в SQL.
- Агрегатные функции
Научитесь агрегировать данные, группировать их по полям, находить сумму, искать минимум, максимум, количество уникальных элементов и среднее.
Домашнее задание - Объединение таблиц
Узнаете, как объединять таблицы, изучите способы и сможете выбрать нужный для своей задачи.
Домашнее задание - Подзапросы и WITH
Поймете, как делать вложенные запросы и создавать временные таблицы для хранения промежуточных данных. Освоите конструкции WITH, научитесь использовать её для написания сложных запросов.
Домашнее задание - Оконные функции
Изучите функции OVER, LAG, LEAD, RANK, ROW_NUMBER. Научитесь вычислять показатели для разных групп объектов: отклонение от среднего по группе и в целом, порядковый номер транзакций клиентов, скользящее среднее.
Домашнее задание - Мастер-класс: проводим аналитическое исследование и решаем бизнес-проблему с помощью SQL
Вы погрузитесь в реальную задачу аналитика данных и поможете бизнесу решить проблему. Под руководством наставника проанализируете данные из разных таблиц, предварительно очистив их и создав новые признаки.
Домашнее задание
Модуль 3
Основы администрирования БД
Научитесь не просто работать с выборками, но и преобразовывать таблицы внутри базы данных, а также создавать новые временные таблицы.
- Создание, изменение, удаление данных в таблице. Создание индексов. Временные таблицы
Научитесь создавать, изменять, удалять данные в таблицах и сами таблицы с помощью команд CREATE, UPDATE, INSERT, DELETE, DROP.
Разберетесь, как создавать временные таблицы и использовать их в запросах.
Домашнее задание - Основы оптимизации
Систематизируете знания по написанию запросов.
Изучите способы написания запросов и научитесь выбирать способ под задачу.
Домашнее задание
Курсовая работа
Аналитический проект в SQL
- Учебный проект
Проект по анализу метрик качества контента и результатов обучения студентов на на основе данных онлайн-школы за 2021 год. - Свой проект
Выберите самостоятельно.