Итак, взялся я за 70-761.
Собственно обложка книжки выглядит так:
В книжке ничего особо нового, по сравнению с 70-461 нет. За исключением двух очень важных вещей: темпоральные таблицы и JSON. На оба следует обратить внимание. Оба пункта желательно пройти дополнительным материалом.
Сама книга уже построена несколько по-другому - в ней всего три главы:
1. Управление данными с помощью Transact-SQL
2. Запросы с использованием расширенных возможностей Transact-SQL
3. Создание программируемых объектов Transact-SQL
Каждая глава состоит из набора "навыков" ( Skill ) в отличии от "урока" ( Lesson ) в 70-461.
Навыков в каждой главе 3-4. По окончании главы идет резюме ( Chapter summary ) и мысленный эксперимент ( Thought experiment ) на 8-10 вопросов - т.е. именно по ней набить руку толком возможности нет - очень мало вопросов. Сам материал подан в логической последовательности - от того что такое SQL и базовых основ в какой последовательности обрабатывается запрос, к программированию. Вот полная структура до уровня навыков:
1. Управление данными с помощью Transact-SQL
1.1. Создание запросов на T-SQL:
- основы SQL, логическая обработка запросов, оператор SELECT, фильтрация данных предикатами, сортировка, фильтрация, комбинация
множеств операторами ( например UNION, EXCEPT )
1.2. Запросы к нескольким таблицам с соединением:
- СROSS, INNER, OUTER JOIN и их комбинации
1.3. Аггрегация и вычисления:
- функции преобразование типов, функции даты и времени, строковые функции, оператор CASE, системные функции, арифметические операторы и функции аггрегирования, аргументы поиска ( Search Arguments ), детерменизм функций.
1.4. Модификация данных:
- вставка, удаление, обновление, слияние ( MERGE ), использование оператора OUTPUT, влияние изменения структуры ( удаление, изменения колонок ) на данные
2. Запросы с использованием расширенных возможностей Transact-SQL
2.1. Подзапросы и оператор APPLY
2.2. Табличные выражения:
- табличные выражения и их сравнение с временными таблицами, производные таблицы ( Derived ), обобщенные табличные выражения ( CTE ),представления ( VIEW ) и встраиваемые ( INLINE ) табличные функции
2.3. Группировка данных и сводные отчеты:
- запросы с группировкой, PIVOT/UNPIVOT, Аналитические ( Windows ) функции
2.4. Запросы к темпоральным данным и нереляционные типы данных:
- темпоральные таблицы, XML, XQuery, JSON
3. Создание программиируемых объектов Transact-SQL
3.1. Cоздание программируемых объектов: представления, пользовательские функции, процедуры
3.2. Обработка ошибок и транзакции: понимание транзакций, использование TRY-CATCH для обработки ошибок
3.3. Использование типов данных: типы данных, троичная логика ( NULL ).
Часть вещей в книге размазана, поэтому я рекомендую сначала прочитать и пробежаться по 70-461, которая построена стройнее, а уже потом читать 70-761. Про себя скажу - по факту 70-761 прочитал я только один раз, а далее повторял только то, чего нет в 70-761,а именно темпоральные таблицы и JSON - навык 2.4. Как я уже говорил - с XML имеет смысл поразбираться отдельно,также как и с темпоральными таблицами и JSON. Поскольку у меня на лабе есть SQL 2016 - все упражнения я прошел плюс еще поигрался с запросами: скажем по работе мы очень ограничено используем аналитические функции, а вопросы на них - в т.ч. со всяким LEAD и LAG - будут. С принципом построения окна для аналитических функций имеет смысл разобраться, в т.ч. и экспериментами.Однако, по факту я использовал коды упражнений 70-461 и отдельный кусок для 2.4 уже из 70-761.
Для подготовки к экзамену - этого достаточно.
Почти.
Далее поясню что еще крайне желательно и это уже мне досталось на платной основе, но зато сдал я с первого раза.