Учебный курс

Основы SQL

SQL (Structured Query Language) — это язык для работы с базами данных. Сейчас он является одним из самых востребованных работодателями языков. SQL используют большинство ИТ специалистов, т.к. они в том или ином виде работают с данными.

Для кого курс

Курс рассчитан на начинающих разработчиков, data scientist'ов, аналитиков, тестировщиков и других ИТ-специалистов, которые хотят научиться работать с данными в базах.

Уровень сложности курса

Курс начального уровня, предварительных знаний о базах данных и SQL не требуется.

Лекции

Лекции бесплатно доступны на YouTube.

  1. Базы данных и SQL (презентация).
  2. Оператор SELECT (презентация).
  3. База данных PostgreSQL.
  4. Фильтрация данных в SQL: WHERE (презентация).
  5. Сортировка в SQL: ORDER BY (презентация).
  6. Создание таблиц в SQL (презентация).
  7. Вставка и изменение данных в SQL: INSERT, UPDATE, DELETE (презентация).
  8. Группировка данных в SQL: GROUP BY (презентация).
  9. Агрегатные функции (презентация).
  10. Фильтрация результатов группировки: HAVING (презентация).
  11. Декомпозиция данных в базе (презентация).
  12. Извлечение данных из нескольких таблиц: JOIN (презентация).
  13. Типы JOIN в SQL (презентация).
  14. Практика. Leetcode: объединение двух таблиц.
  15. Схема базы данных (презентация, схема базы данных онлайн-школы в DrawSQL).
  16. Подзапросы (subqueries) (презентация).
  17. Транзакции в базах данных (презентация).
  18. Индексы в базах данных (презентация).
  19. Ограничения в базах данных (презентация).
  20. Представления (VIEW) в SQL (презентация).
  21. Заключение (презентация).

Практики

Видео на YouTube с разбором практических задач.

Задачи для начинающих (уровень easy):
  1. Leetcode: объединение двух таблиц (описание задачи).
  2. Leetcode: удаление дубликатов email (описание задачи, скрипт создания локальной копии таблицы). Пример использования подзапроса в команде DELETE.
  3. Leetcode: поиск сотрудников, которые получают больше, чем их менеджеры (описание задачи, скрипт создания локальной копии таблицы). Пример использования SELF JOIN - объединения таблицы с самой собой.
  4. SQL Academy: объединение трех таблиц (описание задачи).
  5. Leetcode: перестановка зарплаты (описание задачи, скрипт создания локальной копии базы). Пример использования условного оператора CASE в SQL.
  6. Leetcode: поиск курсов, на которых учится более 5 студентов (описание задачи). Пример использования HAVING для фильтрации результатов группировки.
  7. Leetcode: поиск самого крупного заказчика (описание задачи). Пример совместного использования группировки, сортировки и LIMIT.

Задачи среднего уровня (уровень medium):
  1. Leetcode: поиск сотрудников с максимальной зарплатой в отделе (описание задачи, скрипт создания локальной копии базы). Пример объединения таблиц с запросом SELECT с GROUP BY.

Необходимое программное обеспечение

В курсе используется бесплатная система управления базами данных PostgreSQL.

Чтобы самостоятельно запускать SQL запросы из курса, вам необходимо установить PostgreSQL, а также создать демонстрационную базу данных курса (инструкция по установке и настройке).

Схема базы данных описывается в сервисе DrawSQL.

Как помочь

Как можно поддержать курс:

Если курс вам показался полезным, то помогите, пожалуйста, распространить информацию о нем. Рекомендуйте своим друзьям в социальных сетях. Ставьте лайки и пишите комментарии к видео на YouTube, активность учитывается YouTube при показе видео в поиске и в похожих видео.

Всем заранее спасибо за помощь и поддержку!