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