Описание курса:
Слушатели приобретут знания и навыки, необходимые для написания базовых запросов на Transact-SQL для Microsoft SQL Server 2016. Курс предоставляет необходимый минимум знаний для понимания работы Microsoft SQL Server, и является базовым курсом для администраторов и разработчиков баз данных, а также специалистов в области бизнес аналитики.
Аудитория курса:
Этот курс предназначен для администраторов БД, разработчиков БД и клиентских приложений, и специалистов в области бизнес-аналитики. Курс будет интересен пользователям, желающих понимать работу БД и осмысленно формировать отчеты, а также слушателей, планирующих сдать экзамен.
Предварительные требования:
- Базовые знания о реляционных базах данных
- Базовые знания об основной функциональности ОС Windows
По окончании данного курса слушатели смогут:
- Описать основные концепции архитектуры Microsoft SQL Server 2016
- Определить чем Transact-SQL схож и чем отличается от других языков запросов
- Писать SELECT запросы
- Выполнять запросы из нескольких таблиц
- Сортировать и фильтровать данные
- Описать типы данных в SQL Server
- Изменять данные с помощью Transact-SQL
- Использовать встроенные функции
- Группировать и агрегировать данные
- Использовать подзапросы
- Использовать оператор SET
- Программировать с помощью T-SQL
- Реализовывать транзакции
Содержание курса:
Модуль 1: Введение в Microsoft SQL Server 2016
- Базовая архитектура SQL Server
- Версии и редакции SQL Server
- Начало работы с SQL Server Management Studio
Лабораторная работа 1: Работа с SQL Server 2016 Инструменты
- Работа с SQL Server Management Studio
- Создание сценариев T-SQL
- Использование Books Online
Модуль 2: Введение в написание запросов на языке T-SQL
- Введение в T-SQL
- Понимание наборов данных и логики предикатов
- Понимание логической последовательности операций в SELECT
Лабораторная работа 2: Введение в запросы T-SQL
- Выполнение простых запросов SELECT
- Выполнение запросов с фильтрацией данных и использованием предикатов
- Выполнение запросов с сортировкой данных
Модуль 3: Написание запросов SELECT
- Написание простых операторов выборки данных SELECT
- Удаление дубликатов с помощью DISTINCT
- Использование псевдонимов (Aliases) столбца и таблицы
- Использование простых выражений CASE
Лабораторная работа 3: Написание заявления Базовая ВЫБОР
- Написание простых выборки SELECT
- Устранение дубликатов. Использование DISTINCT
- Использование псевдонимов (Aliases) столбца и таблицы
- Написание простых выражений CASE
Модуль 4: Выполнение запросов выборки данных из нескольких таблицу
- Понимание соединений таблиц (Joins)
- Выполнение запросов с помощью внутренних соединений (Inner Join)
- Выполнение запросов с помощью Внешние соединения (Outer Join)
- Выполнение запросов с перекресными соединениями и самосоединениями (Cross Join и Self Join)
Лабораторная работа 4: Выполнение запросов нескольких таблиц
- Написание запросов, которые используют внутренние соединения
- Написание запросов, которые используют многотабличные внутренние соединения
- Написание запросов, которые используют самосоединения
- Написание запросов, которые используют внешние соединения
- Написание запросов, которые используют перекрестные соединения
Модуль 5: Сортировка и фильтрация данных
- Сортировка данных
- Фильтрация данных предикатами
- Фильтрация строк с TOP и OFFSET-FETCH
- Обработка неизвестных значений (Unknown Values)
Лабораторная работа 5: Сортировка и фильтрация данных
- Написание запросов, которые фильтруют данные с помощью предложения WHERE
- Написание запросов, которые сортируют данные с помощью предложения ORDER BY
- Написание запросов, которые фильтруют запросы с использованием TOP Option
Модуль 6: Работа с типами данных SQL Server
- Введение в типы данных SQL Server 2016
- Работа с символьными данными
- Работа с датой и временем
Лабораторная работа 6: Работа с типами данных SQL Server 2016
- Написание запросов, возвращающих данные даты и времени
- Написание запросов, которые используют функции даты и времени
- Написание запросов, возвращающие символьные данные
- Написание запросов, возвращающих функции обработки символьных данных
Модуль 7: Использование DML для изменения данных
- Вставка данных
- Изменение и удаление данных
- Использование INSERT и SELECT INTO для вставки данных в таблицы
- Использование UPDATE, MERGE, DELETE и TRUNCATE.
Лабораторная работа 7: Использование DML для изменения данных
- Вставка данных
- Обновление и удаление данных
Модуль 8: Использование встроенных функций
- Написание запросов с встроенными функциями
- Использование функций преобразования (конвертации)
- Использование логических функций
- Использование функций для работы с NULL
Лабораторная работа 8: Использование встроенных функций
- Написание запросов, которые используют функции конвертации
- Написание запросов, которые используют логические функции
- Написание запросов, с обработкой пустых данных
Модуль 9: Группировка и агрегирование данных
- Использование агрегатных функций
- Использование предложений GROUP BY
- Фильтрация групп с помощью HAVING
Лабораторная работа 9: Группировка и агрегирование данных
- Написание запросов, которые используют предложения GROUP BY
- Написание запросов, которые используют агрегатные функции
- Написание запросов, которые используют Distinct агрегатные функции
- Написание запросов, которые отфиьтровывают группы с использованием HAVING
Модуль 10: Использование подзапросов (Subqueries)
- Cамодостаточные подзапросы (Self-Contained Subqueries)
- Написание коррелированных подзапросов (Correlated Subqueries
- Использование предиката EXISTS с подзапросами
Лабораторная работа 10: Использование подзапросов
- Написание запросов, которые используют самодостаточные подзапросы
- Написание запросов, которые используют скалярные/однозначные (Scalar) и многозначные (Multi-Result) подзапросов
- Написание запросов, которые используют коррелированые подзапросы и выражения EXISTS
Модуль 11: Использование табличных выражений (Table Expression)
- Использование представлений (View)
- Использование линейные табличные функций (Inline Table-Valued Function)
- Использование производных таблиц (Derived Table)
- Использование обобщенных табличных выражений (Common Table Expressions)
Лабораторная работа 11: Использование выражений таблиц
- Написание запросов, которые используют представления
- Написание запросов, которые используют производные таблицы
- Написание запросов, которые используют обобщенные табличные выражения (CTE)
- Написание запросов, что используют линейные табличные выражения
Модуль 12: Использование операторов наборов данных (Set)
- Написание запросов с оператором UNION для комбинирования наборов данных
- Использование EXCEPT и INTERSECT
- Использование APPLY
Лабораторная работа 12: Использование Set операторов
- Написание запросов, которые используют операторы UNION и UNION ALL
- Написание запросов, которые используют операторы CROSS APPLY и OUTER APPLY
- Написание запросов, которые используют операторы EXCEPT и INTERSECT
Модуль 13: Использование оконных (Windows) функций ранжирования (Ranking), агрегирования (Aggregate) и функций смещений (Offset)
- Создание окон в запросе функцией OVER()
- Изучение оконных функций
Лабораторная работа 13: Использование Windows Рейтинге, Офсетная и Агрегатные функции
- Написание запросов с окнами, которые используют функции ранжирования
- Написание запросов с окнами, которые используют функции смещений Offset
- Написание запросов с окнами, которые используют агрегатные функции
Модуль 14: Сведение (Pivoting) и комплексное группирование (Grouping Set)
- Написание запросов с PIVOT и UNPIVOT
- Работа с комплексным группированием строк запроса
Лабораторная работа 14: Поворотная и группирование Наборы
- Написание запросов, которые используют PIVOT оператор
- Написание запросов, которые используют UNPIVOT оператор
- Написание запросов с комплексным группированием данных с использованием выражений GROUPING SETS, CUBE и ROLLUP
- Использование функции GROUPING_ID.
Модуль 15: Исполнение хранимых процедур
- Запросы данных с хранимыми процедурами
- Передача параметров хранимых процедур
- Создание простых хранимых процедур
- Исполнение динамического SQL (Dynamic SQL) с помощью EXEC и sp_executesql
Лабораторная работа 15: Выполнение хранимых процедур
- Использование EXECUTE для исполнения хранимых процедур
- Использование CREATE PROCEDURE для создание хранимых процедур.
- Передача параметров хранимых процедур
- Выполнение системные хранимых процедур
Модуль 16: Программирование с использованием T-SQL
- Элементы программирования T-SQL
- Управление потоками исполнения (Program Flow)
Лабораторная работа 16: Программирование с помощью T-SQL
- Объявление переменных и разграничение пакетов (Batch)
- Использование Control-Of-Flow элементов
- Использование переменных в динамических операторах SQL
- Использование синонимов
Модуль 17: Обработка ошибок
- Обработка ошибок T-SQL
- Применение структурированной обработки исключений
Лабораторная работа 17: Управление ошибками
- Перенаправление ошибок с использованием TRY/CATCH
- Использование THROW для возвращения клиенту сообщений об ошибках
Модуль 18: Управление транзакций
- Транзакции в базах данных
- Управление транзакциями
Лабораторная работа 18: Управление транзакциями
- Управление транзакциями используя BEGIN, COMMIT и ROLLBACK
- Обработка ошибок в транзакциях в блоке CATCH