The course will very likely be well attended by SQL power users who are not necessarily database-focused; namely, report writers, business analysts and client application... [+]
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.
After completing 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 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
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 After completing this module, you will be able to:
Describe the architecture and editions of SQL Server 2012.
Work with SQL Server Management Studio.
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. Lessons
Understanding Predicate Logic
Understanding the Logical Order of Operations in SELECT statements
Lab : Introduction to Transact-SQL Querying After completing this module, you will be able to:
Describe 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
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 After completing this module, you will be able to:
Write simple SELECT statements.
Eliminate duplicates using the DISTINCT clause.
Use column and table aliases.
Write simple CASE expressions.
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. Lessons
Querying with Inner Joins
Querying with Outer Joins
Querying with Cross Joins and Self Joins
Lab : Querying Multiple Tables After completing this module, you will be able to:
Describe how multiple tables may be queried in a SELECT statement using joins.
Write queries that use inner joins.
Write queries that use outer joins.
Write queries that use self-joins and cross joins.
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. Lessons
Filtering Data with Predicates
Filtering with the TOP and OFFSET-FETCH Options
Working with Unknown Values
Lab : Sorting and Filtering Data After completing this module, you will be able to:
Filter data with predicates in the WHERE clause.
Sort data using ORDER BY.
Filter data in the SELECT clause with TOP.
Filter data with OFFSET and FETCH.
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. 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 After completing this module, you will be able to:
Describe numeric data types, type precedence and type conversions.
Write queries using character data types.
Write queries using date and time 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. Lessons
Modifying and Deleting Data
Lab : Using DML to Modify Data After completing this module, you will be able to:
Insert new data into your tables.
Update and delete existing records in your tables.
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. Lessons
Writing Queries with Built-In Functions
Using Conversion Functions
Using Logical Functions
Using Functions to Work with NULL
Lab : Using Built-In Functions After completing this module, you will be able to:
Write queries with built-in scalar functions.
Use conversion functions.
Use logical functions.
Use functions that work with NULL.
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. Lessons
Using Aggregate Functions
Using the GROUP BY Clause
Filtering Groups with HAVING
Lab : Grouping and Aggregating Data After completing this module, you will be able to:
Write queries which summarize data using built-in aggregate functions.
Use the GROUP BY clause to arrange rows into groups.
Use the HAVING clause to filter out groups based on a search condition.
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. Lessons
Writing Self-Contained Subqueries
Writing Correlated Subqueries
Using the EXISTS Predicate with Subqueries
Lab : Using Subqueries After completing this module, you will be able to:
Describe the uses of queries which are nested within other queries.
Write self-contained subqueries which return scalar or multi-valued results.
Write correlated subqueries which return scalar or multi-valued results.
Use the EXISTS predicate to efficiently check for the existence of rows in a subquery.
Module 11: Using Set Operators This module introduces 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
Lab : Using SET Operators After completing this module, you will be able to:
Write queries using UNION, EXCEPT, and INTERSECT operators.
Use the APPLY operator.