The main purpose of this 5 day instructor led course is to give students a good understanding of the Transact-SQL language which is used by all SQL Server-related disciplines; namely, Database Administration, Database Development and Business Intelligence. As such, the primary target audience for this course is: Database Administrators, Database Developers and BI professionals.
The course will very likely be well attended by SQL power users who aren’t necessarily database-focused; namely, report writers, business analysts and client application developers.
Lesson objectives help students become comfortable with the course, and also provide a means to evaluate learning. Upon successful completion of this course, students will be able to:
• Describe the basic architecture and concepts of Microsoft SQL Server 2016.
• Understand the similarities and differences between Transact-SQL and other computer languages.
• Write SELECT queries
• Query multiple tables
• Sort and filter data
• Describe the use of data types in SQL Server
• Modify data using Transact-SQL
• Use built-in functions
• Group and aggregate data
• Use subqueries
• Use table expressions
• Use set operators
• Use window ranking, offset and aggregate functions
• Implement pivoting and grouping sets
• Execute stored procedures
• Program with T-SQL
• Implement error handling
• Implement transactions
Students should have a working knowledge of relational databases and a basic knowledge of the Microsoft Windows operating system and its core functionality.
Module 1: Introduction to Microsoft SQL Server 2016
• This module introduces SQL Server, the versions of SQL Server, including cloud versions, and how to connect to SQL Server using SQL Server Management Studio.
• The Basic Architecture of SQL Server
• SQL Server Editions and Versions
• Getting Started with SQL Server Management Studio
• Lab : Working with SQL Server 2016 Tools
Module 2: Introduction to T-SQL Querying
• This module introduces the elements of T-SQL and their role in writing queries, describes the use of sets in SQL Server, describes the use of predicate logic in SQL Server, and describes the logical order of operations in SELECT statements.
• Introducing T-SQL
• Understanding Sets
• Understanding Predicate Logic
• Understanding the Logical Order of Operations in SELECT statements
• Lab : Introduction to Transact-SQL Querying
Module 3: Writing SELECT Queries
• This module introduces the fundamentals of the SELECT statement, focusing on queries against a single table.
• Writing Simple SELECT Statements
• Eliminating Duplicates with DISTINCT
• Using Column and Table Aliases
• Writing Simple CASE Expressions
• Lab : Writing Basic SELECT Statements
Module 4: Querying Multiple Tables
• This module explains how to write queries which combine data from multiple sources in SQL Server. The module introduces the use of JOINs in T-SQL queries as a mechanism for retrieving data from multiple tables.
• Understanding Joins
• Querying with Inner Joins
• Querying with Outer Joins
• Querying with Cross Joins and Self Joins
• Lab : Querying Multiple Tables
Module 5: Sorting and Filtering Data
• This module explains how to enhance queries to limit the rows they return, and to control the order in which the rows are displayed. The module also discusses how to resolve missing and unknown results.
• Sorting Data
• Filtering Data with Predicates
• Filtering with the TOP and OFFSET-FETCH Options
• Working with Unknown Values
• Lab : Sorting and Filtering Data
Module 6: Working with SQL Server 2016 Data Types
• This module explains the data types SQL Server uses to store data. It introduces the many types of numeric and special-use data types. It also explains conversions between data types, and the importance of type precedence.
• Introducing SQL Server 2016 Data Types
• Working with Character Data
• Working with Date and Time Data
• Lab : Working with SQL Server 2016 Data Types
Module 7: Using DML to Modify Data
• This module describes the use of Transact-SQL Data Manipulation Language to perform inserts, updates, and deletes to your data.
• Inserting Data
• Modifying and Deleting Data
• Lab : Using DML to Modify Data
Module 8: Using Built-In Functions
• This module introduces the use of functions that are built in to SQL Server Denali, and will discuss some common usages including data type conversion, testing for logical results and nullability.
• Writing Queries with Built-In Functions
• Using Conversion Functions
• Using Logical Functions
• Using Functions to Work with NULL
• Lab : Using Built-In Functions
Module 9: Grouping and Aggregating Data
• This module introduces methods for grouping data within a query, aggregating the grouped data and filtering groups with HAVING. The module is designed to help the student grasp why a SELECT clause has restrictions placed upon column naming in the GROUP BY clause as well as which columns may be listed in the SELECT clause.
• Using Aggregate Functions
• Using the GROUP BY Clause
• Filtering Groups with HAVING
• Lab : Grouping and Aggregating Data
Module 10: Using Subqueries
• This module will introduce the use of subqueries in various parts of a SELECT statement. It will include the use of scalar and multi-result subqueries, and the use of the IN and EXISTS operators.
• Writing Self-Contained Subqueries
• Writing Correlated Subqueries
• Using the EXISTS Predicate with Subqueries
• Lab : Using Subqueries
Module 11: Using Set Operators
• This module introduces the set operators UNION, INTERSECT, and EXCEPT to compare rows between two input sets.
• Writing Queries with the UNION Operator
• Using EXCEPT and INTERSECT
• Using APPLY
• Lab : Using SET Operators