Учебный Курс: Введение в SQL
Полное название курса: «Введение в структурированный язык запросов к реляционным базам данных SQL (Structured Query Language)»
Данный курс читался АтрашкевичАндрей на базе лаборатории дважды: в сентябре-октябре 2013 г. и мае 2014 г.
Содержание
Программа курса
- Основы теории реляционных баз данных
- Что такое базы данных? Зачем они нужны? Почему необходимо реляционная связь?
- Таблицы и их атрибуты: поля (колонки — fields), записи (строки — observations), значения. Типы данных (строковые и числовые).
- Понятие ключа таблицы. Виды ключей.
- Описание рабочих таблиц и реляционных связей между ними.
- Основы языка SQL
- Structured Query Language — «язык структурированных запросов» или «структурированный язык запросов»?
- Соглашения об оформлении (нотации) кода и комментариев.
- Общая культура кода любого языка программирования (на примере SQL). Почему важно оформлять код?
- Простой оператор SELECT ... FROM
- Первый запрос: запрос всех полей и все записей таблицы.
- Запрос выбранных полей.
- Запрос с указанием хранилища (схемы).
- Идентификатор таблиц.
- Переименование полей.
- Создание новых полей как результат операций над имеющимися.
- Оператор отбора уникальных записей DISTINCT: использование с одним полем и с несколькими полями.
- Оператор отбора WHERE
- Отбор записей по условию: математические операторы сравнения.
- Отбор записей по нескольким условиям: логические операторы AND, OR, NOT. Порядок исполнения логических операторов. Использование скобок для изменения порядка исполнения логических операторов.
- Оператор LIKE и использование «масок» (метасимволов): %, *. Основные ошибки и опасности, связанные с использованием оператора LIKE и «масок».
- Оператор упорядочивания ORDER BY
- Простая сортировка (по одному полю).
- Сортировка по возрастанию и убыванию: операторы ASC и DESC.
- Сортировка по нескольким полям.
- Конструкция ветвления (ЕСЛИ—ТО—ИНАЧЕ—ВСЁ)
- Построчная обработка данных (алгоритм).
- Основная конструкция ветвления: CASE WHEN THEN ELSE END. Стандартное оформление ветвления в коде.
- Множественные условиях WHEN. Логика обработки данных.
- Основные приёмы уменьшения числа ошибок при работе с ветвлениями.
- Основные приёмы обработки строковых полей
- Функция нахождения длины строки LENGTH().
- Функция нахождения первого вхождения подстроки INSTR().
- Функция извлечения подстроки SUBSTR().
- Функция замены-подстановка REPLACE().
- Функция изменения регистров UPPER() и LOWER(). Почему это самые важные функции для работы со строковыми типами данных.
- Подзапросы
- Логика использования подзапросов.
- Примеры использования подзапросов.
- Основные ошибки и опасности, связанные с использованием подзапросов.
- Простые объединения и полуобъединения
- Операторы UNION, UNION ALL, EXCEPT, INTERSECT.
- Иллюстрация объединений и полуобъединений с помощью диаграмм Эйлера-Венна. Объединения и полуобъединения как результат логических операций над множествами.
- Объединение таблицы с помощью оператора WHERE
- Простое объединение (объединение двух таблиц).
- Объединение множества таблиц.
- Оператор групповой обработки GROUP BY и операторы групповых статистик
- Логика групповой обработки данных.
- Операторы групповых статистик: MIN, MAX, COUNT, AVG, SUM.
- Использование оператора HAVING как расширения оператора WHERE для результатов групповых обработок.
- Разбор типичных ошибок, связанных с использованием групповых обработок.
- Объединение таблиц с помощью оператора JOIN ... ON
- Виды JOIN'ов: INNER JOIN (внутренний), OUTER JOIN'ы (внешние).
- Виды OUTER JOIN'ов: LEFT, RIGHT, FULL, CROSS JOIN'ы.
- Подробная иллюстрация всех видов JOIN'ов на примерах («рукопашный» SQL).
- Иллюстрация JOIN'ов через диаграммы Эйлера-Венна.
Материалы курса
КатегорияУчебныеКурсы