Course Overview
This course is designed to introduce students to Transact-SQL. It is designed in such a way that the first three days can be taught as a course to students requiring the knowledge for other courses in the SQL Server curriculum. Days 4 & 5 teach the remaining skills required to take exam 70-761.
Audience profile
The main purpose of the 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.
Prerequisites
- Basic knowledge of the Microsoft Windows operating system and its core functionality.
- Working knowledge of relational databases.
- Delegates will learn how to
- After completing this course, students will be able to:
- Describe key capabilities and components of SQL Server 2016.
- Describe T-SQL, sets, and predicate logic.
- Write a single table SELECT statement.
- Write a multi-table SELECT statement.
- Write SELECT statements with filtering and sorting.
- Describe how SQL Server uses data types.
- Write DML statements.
- Write queries that use built-in functions.
- Write queries that aggregate data.
- Write subqueries.
- Create and implement views and table-valued functions.
- Use set operators to combine query results.
- Write queries that use window ranking, offset, and aggregate functions.
- Transform data by implementing pivot, unpivot, rollup and cube.
- Create and implement stored procedures.
- Add programming constructs such as variables, conditions, and loops to T-SQL code.
Outline
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.
Lessons
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
Working with SQL Server Management Studio
Creating and Organizing T-SQL Scripts
Using Books Online
Module 2: Introduction to T-SQL Querying
This module describes the elements of T-SQL and their role in writing queries. Describe the use of sets in SQL Server. Describe the use of predicate logic in SQL Server. Describe the logical order of operations in SELECT statements.
Lessons
Introducing T-SQL
Understanding Sets
Understanding Predicate Logic
Understanding the Logical Order of Operations in SELECT statements
Lab : Introduction to T-SQL Querying
Executing Basic SELECT Statements
Executing Queries that Filter Data using Predicates
Executing Queries That Sort Data Using ORDER BY
Module 3: Writing SELECT Queries
This module introduces the fundamentals of the SELECT statement, focusing on queries against a single table.
Lessons
Writing Simple SELECT Statements
Eliminating Duplicates with DISTINCT
Using Column and Table Aliases
Writing Simple CASE Expressions
Lab : Writing Basic SELECT Statements
Writing Simple SELECT Statements
Eliminating Duplicates Using DISTINCT
Using Column and Table Aliases
Using a Simple CASE Expression
Module 4: Querying Multiple Tables
This module describes how to write queries that combine data from multiple sources in Microsoft SQL Server 2016.
Lessons
Understanding Joins
Querying with Inner Joins
Querying with Outer Joins
Querying with Cross Joins and Self Joins
Lab : Querying Multiple Tables
Writing Queries that use Inner Joins
Writing Queries that use Multiple-Table Inner Joins
Writing Queries that use Self-Joins
Writing Queries that use Outer Joins
Writing Queries that use Cross Joins
Module 5: Sorting and Filtering Data
This module describes how to implement sorting and filtering.
Lessons
Sorting Data
Filtering Data with Predicates
Filtering Data with TOP and OFFSET-FETCH
Working with Unknown Values
Lab : Sorting and Filtering Data
Writing Queries that Filter Data using a WHERE Clause
Writing Queries that Sort Data Using an ORDER BY Clause
Writing Queries that Filter Data Using the TOP Option
Module 6: Working with SQL Server 2016 Data Types
This module introduces the data types SQL Server uses to store data.
Lessons
Introducing SQL Server 2016 Data Types
Working with Character Data
Working with Date and Time Data
Lab : Working with SQL Server 2016 Data Types
Writing Queries that Return Date and Time Data
Writing Queries that use Date and Time Functions
Writing Queries That Return Character Data
Writing Queries That Return Character Functions
Module 7: Using DML to Modify Data
This module describes how to create DML queries, and why you would want to.
Lessons
Inserting Data
Modifying and Deleting Data
Lab : Using DML to Modify Data
Inserting Data
Updating and Deleting Data
Module 8: Using Built-In Functions
This module introduces some of the many built in functions in SQL Server 2016.
Lessons
Writing Queries with Built-In Functions
Using Conversion Functions
Using Logical Functions
Using Functions to Work with NULL
Lab : Using Built-In Functions
Writing Queries That Use Conversion Functions
Writing Queries that use Logical Functions
Writing Queries that Test for Nullability
Module 9: Grouping and Aggregating Data
This module describes how to use aggregate functions.
Lessons
Using Aggregate Functions
Using the GROUP BY Clause
Filtering Groups with HAVING
Lab : Grouping and Aggregating Data
Writing Queries That Use the GROUP BY Clause
Writing Queries that Use Aggregate Functions
Writing Queries that Use Distinct Aggregate Functions
Writing Queries that Filter Groups with the HAVING Clause
Module 10: Using Subqueries
This module describes several types of subquery and how and when to use them.
Lessons
Writing Self-Contained Subqueries
Writing Correlated Subqueries
Using the EXISTS Predicate with Subqueries
Lab : Using Subqueries
Writing Queries That Use Self-Contained Subqueries
Writing Queries That Use Scalar and Multi-Result Subqueries
Writing Queries That Use Correlated Subqueries and an EXISTS Clause
Module 11: Using Table Expressions
Previously in this course, you learned about using subqueries as an expression that returned results to an outer calling query. Like subqueries, table expressions are query expressions, but table expressions extend this idea by allowing you to name them and to work with their results as you would work with data in any valid relational table. Microsoft SQL Server 2016 supports four types of table expressions: derived tables, common table expression (CTEs), views, and inline table-valued functions (TVFs). In this module, you will learn to work with these forms of table expressions and learn how to use them to help create a modular approach to writing queries.
Lessons
Using Views
Using Inline Table-Valued Functions
Using Derived Tables
Using Common Table Expressions
Lab : Using Table Expressions
Writing Queries That Use Views
Writing Queries That Use Derived Tables
Writing Queries That Use Common Table Expressions (CTEs)
Writing Queries That Sue Inline Table-Valued Expressions
Module 12: Using Set Operators
This module introduces how to use the set operators UNION, INTERSECT, and EXCEPT to compare rows between two input sets.
Lessons
Writing Queries with the UNION operator
Using EXCEPT and INTERSECT
Using APPLY
Lab : Using Set Operators
Writing Queries That Use UNION Set Operators and UNION ALL
Writing Queries That Use CROSS APPLY and OUTER APPLY Operators
Writing Queries That Use the EXCEPT and INTERSECT Operators
Module 13: Using Windows Ranking, Offset, and Aggregate Functions
This module describes the benefits to using window functions. Restrict window functions to rows defined in an OVER clause, including partitions and frames. Write queries that use window functions to operate on a window of rows and return ranking, aggregation, and offset comparison results.
Lessons
Creating Windows with OVER
Exploring Window Functions
Lab : Using Windows Ranking, Offset, and Aggregate Functions
Writing Queries that use Ranking Functions
Writing Queries that use Offset Functions
Writing Queries that use Window Aggregate Functions
Module 14: Pivoting and Grouping Sets
This module describes write queries that pivot and unpivot result sets. Write queries that specify multiple groupings with grouping sets
Lessons
Writing Queries with PIVOT and UNPIVOT
Working with Grouping Sets
Lab : Pivoting and Grouping Sets
Writing Queries that use the PIVOT Operator
Writing Queries that use the UNPIVOT Operator
Writing Queries that use the GROUPING SETS CUBE and ROLLUP Subclauses
Module 15: Executing Stored Procedures
This module describes how to return results by executing stored procedures. Pass parameters to procedures. Create simple stored procedures that encapsulate a SELECT statement. Construct and execute dynamic SQL with EXEC and sp_executesql.
Lessons
Querying Data with Stored Procedures
Passing Parameters to Stored procedures
Creating Simple Stored Procedures
Working with Dynamic SQL
Lab : Executing Stored Procedures
Using the EXECUTE statement to Invoke Stored Procedures
Passing Parameters to Stored procedures
Executing System Stored Procedures
Module 16: Programming with T-SQL
This module describes how to enhance your T-SQL code with programming elements.
Lessons
T-SQL Programming Elements
Controlling Program Flow
Lab : Programming with T-SQL
Declaring Variables and Delimiting Batches
Using Control-Of-Flow Elements
Using Variables in a Dynamic SQL Statement
Using Synonyms
Querying Data With Transact-SQL Duration: 5 Days
Course Overview
This course is designed to introduce students to Transact-SQL. It is designed in such a way that the first three days can be taught as a course to students requiring the knowledge for other courses in the SQL Server curriculum. Days 4 & 5 teach the remaining skills required to take exam 70-761.
Audience profile
The main purpose of the 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.
Prerequisites
- Basic knowledge of the Microsoft Windows operating system and its core functionality.
- Working knowledge of relational databases.
- Delegates will learn how to
- After completing this course, students will be able to:
- Describe key capabilities and components of SQL Server 2016.
- Describe T-SQL, sets, and predicate logic.
- Write a single table SELECT statement.
- Write a multi-table SELECT statement.
- Write SELECT statements with filtering and sorting.
- Describe how SQL Server uses data types.
- Write DML statements.
- Write queries that use built-in functions.
- Write queries that aggregate data.
- Write subqueries.
- Create and implement views and table-valued functions.
- Use set operators to combine query results.
- Write queries that use window ranking, offset, and aggregate functions.
- Transform data by implementing pivot, unpivot, rollup and cube.
- Create and implement stored procedures.
- Add programming constructs such as variables, conditions, and loops to T-SQL code.
Outline
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.
Lessons
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
Working with SQL Server Management Studio
Creating and Organizing T-SQL Scripts
Using Books Online
Module 2: Introduction to T-SQL Querying
This module describes the elements of T-SQL and their role in writing queries. Describe the use of sets in SQL Server. Describe the use of predicate logic in SQL Server. Describe the logical order of operations in SELECT statements.
Lessons
Introducing T-SQL
Understanding Sets
Understanding Predicate Logic
Understanding the Logical Order of Operations in SELECT statements
Lab : Introduction to T-SQL Querying
Executing Basic SELECT Statements
Executing Queries that Filter Data using Predicates
Executing Queries That Sort Data Using ORDER BY
Module 3: Writing SELECT Queries
This module introduces the fundamentals of the SELECT statement, focusing on queries against a single table.
Lessons
Writing Simple SELECT Statements
Eliminating Duplicates with DISTINCT
Using Column and Table Aliases
Writing Simple CASE Expressions
Lab : Writing Basic SELECT Statements
Writing Simple SELECT Statements
Eliminating Duplicates Using DISTINCT
Using Column and Table Aliases
Using a Simple CASE Expression
Module 4: Querying Multiple Tables
This module describes how to write queries that combine data from multiple sources in Microsoft SQL Server 2016.
Lessons
Understanding Joins
Querying with Inner Joins
Querying with Outer Joins
Querying with Cross Joins and Self Joins
Lab : Querying Multiple Tables
Writing Queries that use Inner Joins
Writing Queries that use Multiple-Table Inner Joins
Writing Queries that use Self-Joins
Writing Queries that use Outer Joins
Writing Queries that use Cross Joins
Module 5: Sorting and Filtering Data
This module describes how to implement sorting and filtering.
Lessons
Sorting Data
Filtering Data with Predicates
Filtering Data with TOP and OFFSET-FETCH
Working with Unknown Values
Lab : Sorting and Filtering Data
Writing Queries that Filter Data using a WHERE Clause
Writing Queries that Sort Data Using an ORDER BY Clause
Writing Queries that Filter Data Using the TOP Option
Module 6: Working with SQL Server 2016 Data Types
This module introduces the data types SQL Server uses to store data.
Lessons
Introducing SQL Server 2016 Data Types
Working with Character Data
Working with Date and Time Data
Lab : Working with SQL Server 2016 Data Types
Writing Queries that Return Date and Time Data
Writing Queries that use Date and Time Functions
Writing Queries That Return Character Data
Writing Queries That Return Character Functions
Module 7: Using DML to Modify Data
This module describes how to create DML queries, and why you would want to.
Lessons
Inserting Data
Modifying and Deleting Data
Lab : Using DML to Modify Data
Inserting Data
Updating and Deleting Data
Module 8: Using Built-In Functions
This module introduces some of the many built in functions in SQL Server 2016.
Lessons
Writing Queries with Built-In Functions
Using Conversion Functions
Using Logical Functions
Using Functions to Work with NULL
Lab : Using Built-In Functions
Writing Queries That Use Conversion Functions
Writing Queries that use Logical Functions
Writing Queries that Test for Nullability
Module 9: Grouping and Aggregating Data
This module describes how to use aggregate functions.
Lessons
Using Aggregate Functions
Using the GROUP BY Clause
Filtering Groups with HAVING
Lab : Grouping and Aggregating Data
Writing Queries That Use the GROUP BY Clause
Writing Queries that Use Aggregate Functions
Writing Queries that Use Distinct Aggregate Functions
Writing Queries that Filter Groups with the HAVING Clause
Module 10: Using Subqueries
This module describes several types of subquery and how and when to use them.
Lessons
Writing Self-Contained Subqueries
Writing Correlated Subqueries
Using the EXISTS Predicate with Subqueries
Lab : Using Subqueries
Writing Queries That Use Self-Contained Subqueries
Writing Queries That Use Scalar and Multi-Result Subqueries
Writing Queries That Use Correlated Subqueries and an EXISTS Clause
Module 11: Using Table Expressions
Previously in this course, you learned about using subqueries as an expression that returned results to an outer calling query. Like subqueries, table expressions are query expressions, but table expressions extend this idea by allowing you to name them and to work with their results as you would work with data in any valid relational table. Microsoft SQL Server 2016 supports four types of table expressions: derived tables, common table expression (CTEs), views, and inline table-valued functions (TVFs). In this module, you will learn to work with these forms of table expressions and learn how to use them to help create a modular approach to writing queries.
Lessons
Using Views
Using Inline Table-Valued Functions
Using Derived Tables
Using Common Table Expressions
Lab : Using Table Expressions
Writing Queries That Use Views
Writing Queries That Use Derived Tables
Writing Queries That Use Common Table Expressions (CTEs)
Writing Queries That Sue Inline Table-Valued Expressions
Module 12: Using Set Operators
This module introduces how to use the set operators UNION, INTERSECT, and EXCEPT to compare rows between two input sets.
Lessons
Writing Queries with the UNION operator
Using EXCEPT and INTERSECT
Using APPLY
Lab : Using Set Operators
Writing Queries That Use UNION Set Operators and UNION ALL
Writing Queries That Use CROSS APPLY and OUTER APPLY Operators
Writing Queries That Use the EXCEPT and INTERSECT Operators
Module 13: Using Windows Ranking, Offset, and Aggregate Functions
This module describes the benefits to using window functions. Restrict window functions to rows defined in an OVER clause, including partitions and frames. Write queries that use window functions to operate on a window of rows and return ranking, aggregation, and offset comparison results.
Lessons
Creating Windows with OVER
Exploring Window Functions
Lab : Using Windows Ranking, Offset, and Aggregate Functions
Writing Queries that use Ranking Functions
Writing Queries that use Offset Functions
Writing Queries that use Window Aggregate Functions
Module 14: Pivoting and Grouping Sets
This module describes write queries that pivot and unpivot result sets. Write queries that specify multiple groupings with grouping sets
Lessons
Writing Queries with PIVOT and UNPIVOT
Working with Grouping Sets
Lab : Pivoting and Grouping Sets
Writing Queries that use the PIVOT Operator
Writing Queries that use the UNPIVOT Operator
Writing Queries that use the GROUPING SETS CUBE and ROLLUP Subclauses
Module 15: Executing Stored Procedures
This module describes how to return results by executing stored procedures. Pass parameters to procedures. Create simple stored procedures that encapsulate a SELECT statement. Construct and execute dynamic SQL with EXEC and sp_executesql.
Lessons
Querying Data with Stored Procedures
Passing Parameters to Stored procedures
Creating Simple Stored Procedures
Working with Dynamic SQL
Lab : Executing Stored Procedures
Using the EXECUTE statement to Invoke Stored Procedures
Passing Parameters to Stored procedures
Executing System Stored Procedures
Module 16: Programming with T-SQL
This module describes how to enhance your T-SQL code with programming elements.
Lessons
T-SQL Programming Elements
Controlling Program Flow
Lab : Programming with T-SQL
Declaring Variables and Delimiting Batches
Using Control-Of-Flow Elements
Using Variables in a Dynamic SQL Statement
Using Synonyms