20461: Querying Microsoft SQL Server Training

Answers to Popular Questions:

 
Yes, this class can be tailored to meet your specific training needs.
Yes, we provide Microsoft Windows Server consulting services.
Yes, group discounts are provided.

Course Description

 
This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for Microsoft SQL Server 2014. This course is the foundation for all SQL Server-related disciplines; namely, Database Administration, Database Development and Business Intelligence. This course helps people prepare for exam 70-461. Note: This course is designed for customers who are interested in learning SQL Server 2012 or SQL Server 2014. It covers the new features in SQL Server 2014, but also the important capabilities across the SQL Server data platform.
Course Length: 5 Days
Course Tuition: $2090 (US)

Prerequisites

This course is intended for Database Administrators, Database Developers, and Business Intelligence professionals. The course will very likely be well attended by SQL power users who arenâ??t necessarily database-focused or plan on taking the exam; namely, report writers, business analysts and client application developer. This course requires that you meet the following prerequisites: Working knowledge of relational databases. Basic knowledge of the Microsoft Windows operating system and its core functionality.

Course Outline

 

Module 1: Introduction to Microsoft SQL Server 2014
This module introduces the SQL Server platform and major tools. It discusses editions, versions, tools used to query, documentation sources, and the logical structure of databases.

Lessons

    The Basic Architecture of SQL Server
    SQL Server Editions and Versions
    Getting Started with SQL Server Management Studio

Lab: Working with SQL Server 2014 Tools

    Working with SQL Server Management Studio
    Creating and Organizing T-SQL scripts
    Using Books Online

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 Transact SQL as the primary querying language of SQL Server. It discusses the basic structure of T-SQL queries, the logical flow of a SELECT statement, and introduces concepts such as predicates and set-based operations.

Lessons

    Introducing T-SQL
    Understanding Sets
    Understanding Predicate Logic
    Understanding the Logical Order of Operations in SELECT statements

Lab: Introduction to Transact-SQL Querying

    Executing Basic SELECT Statements
    Executing queries which filter data using predicates
    Executing queries which sort data using ORDER BY

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

    Write simple SELECT Statements
    Eliminate Duplicates Using Distinct
    Use Table and Column Aliases
    Use a Simple CASE Expression

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

    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 Join
    Writing Queries That Use Self Joins
    Writing Queries That Use Outer Joins
    Writing Queries That Use Cross Joins

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

    Sorting Data
    Filtering Data with a WHERE Clause
    Filtering with the TOP and OFFSET-FETCH Options
    Working with Unknown and Missing Values

Lab: Sorting and Filtering Data

    Writing Queries That Filter Data Using a WHERE Clause
    Writing Queries That Filter Data Using an ORDER BY Clause
    Writing Queries That Filter Data Using the TOP Option
    Writing Queries That Filter Data Using the OFFSET-FETCH Clause

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 2014 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 2014 Data Types
    Working with Character Data
    Working with Date and Time Data

Lab: Working with SQL Server 2014 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 Use Character Functions

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

    Inserting Data
    Modifying and Deleting Data

Lab: Using DML to Modify Data

    Inserting Data
    Updating and Deleting 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

    Write queries which use conversion functions
    Write queries which use logical functions
    Write queries which test for nullability

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

    Write queries which use the GROUP BY clause
    Write queries which use aggregate functions
    Write queries which use distinct aggregate functions
    Write queries which filter groups with the HAVING clause

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

    Write queries which use self-contained subqueries
    Write queries which use scalar and multi-result subqueries
    Write queries which use correlated subqueries and EXISTS predicate

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 Table Expressions
This module introduces T-SQL expressions which return a valid relational table, typically for further use in the query. The module discusses views, derived tables, common table expressions and inline table-valued functions.

Lessons

    Using Derived Tables
    Using Common Table Expressions
    Using Views
    Using Inline Table-Valued Functions

Lab: Using Table Expressions

    Write Queries Which Use Views
    Write Queries Which Use Derived Tables
    Write Queries Which Use Common Table Expressions
    Write Queries Which Use Inline Table-Valued Functions

After completing this module, you will be able to:

    Write queries which use derived tables.
    Write queries which use common table expressions.
    Create simple views and write queries against them.
    Create simple inline table-valued functions and write queries against them.

Module 12: Using Set Operators
This module introduces Microsoft SharePoint Server as a platform for BI, and then focuses on building BI dashboards and scorecards with PerformancePoint Services.

Lessons

    Writing Queries with the UNION Operator
    Using EXCEPT and INTERSECT
    Using APPLY

Lab: Using Set Operators

    Write queries which use UNION set operators and UNION ALL multi-set operators
    Write queries which use CROSS APPLY and OUTER APPLY operators
    Write queries which use EXCEPT and INTERSECT operators

After completing this module, you will be able to:

    Write queries which combine data using the UNION operator
    Write queries which compare sets using the INTERSECT and EXCEPT operators
    Write queries which manipulate rows in a table by using APPLY with the results of a derived table or function

Module 13: Using Window Ranking, Offset, and Aggregate Functions
This module introduces window functions including ranking, aggregate and offset functions. Much of this functionality is new to SQL Server 2012. It will cover the use of T-SQL functions such as ROW_NUMBER, RANK, DENSE_RANK, NTILE, LAG, LEAD, FIRST_VALUE and LAST_VALUE to perform calculations against a set, or window, of rows.

Lessons

    Creating Windows with OVER
    Exploring Window Functions

Lab: Using Window Ranking, Offset and Aggregate Functions

    Write queries which use ranking functions
    Write queries which use offset functions
    Write queries which use window aggregate functions

After completing this module, you will be able to:

    Describe the benefits to using window functions.
    Restrict window functions to rows defined in an OVER clause, including partitions and frames.
    Write queries which use window functions to operate on a window of rows and return ranking, aggregation and offset comparison results.

Module 14: Pivoting and Grouping Sets
This module discusses techniques for pivoting data in T-SQL as well to introduce the fundamentals of the GROUPING SETS clause. It will also cover the use of GROUP BY ROLLUP and GROUP BY CUBE syntax in SQL Server.

Lessons

    Writing Queries with PIVOT and UNPIVOT
    Working with Grouping Sets

Lab: Pivoting and Grouping Sets

    Write queries which use the PIVOT operator
    Write queries which use the UNPIVOT operator
    Write queries which use the GROUPING SETS subclause

After completing this module, you will be able to:

    Write queries which pivot and unpivot result sets.
    Write queries which specify multiple groupings with grouping sets.

Module 15: Executing Stored Procedures
This module introduces the use of existing stored procedures in a T-SQL querying environment. It discusses the use of EXECUTE, how to pass input and output parameters to a procedure, and how to invoke system stored procedures.

Lessons

    Querying Data with Stored Procedures
    Passing Parameters to Stored Procedures
    Creating Simple Stored Procedures
    Working with Dynamic SQL

Lab: Executing Stored Procedures

    Use the EXECUTE statement to invoke stored procedures
    Pass parameters to stored procedures
    Execute system stored procedures

After completing this module, you will be able to:

    Return results by executing stored procedures.
    Pass parameters to procedures.
    Create simple stored procedures which encapsulate a SELECT statement.
    Construct and execute dynamic SQL with EXEC and sp_executesql.

Module 16: Programming with T-SQL
This module provides a basic introduction to T-SQL programming concepts and objects. It discusses batches, variables, control of flow elements such as loops and conditionals, how to create and execute dynamic SQL statements, and how to use synonyms.

Lessons

    T-SQL Programming Elements
    Controlling Program Flow

Lab: Programming with T-SQL

    Declaring Variables and Delimiting Batches
    Using Control-of-Flow Elements
    Generating Dynamic SQL
    Using Synonyms

After completing this module, you will be able to:

    Describe the language elements of T-SQL used for simple programming tasks.
    Describe batches and how they are handled by SQL Server.
    Declare and assign variables and synonyms.
    Use IF and WHILE blocks to control program flow.

Module 17: Implementing Error Handling
This module introduces the use of error handlers in T-SQL code. It will introduce the difference between compile errors and run-time errors, and will cover how errors affect batches. The module will also cover how to control error handling using TRY/CATCH blocks, the use of the ERROR class of functions, and the use of the new THROW statement.

Lessons

    Using TRY / CATCH Blocks
    Working with Error Information

Lab: Implementing Error Handling

    Redirecting Errors with TRY / CATCH
    Using THROW to Pass an Error Message Back to a Client

After completing this module, you will be able to:

    Describe SQL Server's behavior when errors occur in T-SQL code.
    Implement structured exception handling in T-SQL.
    Return information about errors from system objects.
    Raise user-defined errors and pass system errors in T-SQL code.

Module 18: Implementing Transactions
This module introduces the concepts of transaction management in SQL Server. It will provide a high-level overview of transaction properties, cover the basics of marking transactions with BEGIN, COMMIT and ROLLBACK.

Lessons

    Transactions and the Database Engine
    Controlling Transactions
    Isolation Levels

Lab: Implementing Transactions

    Controlling transactions with BEGIN, COMMIT, and ROLLBACK
    Adding error handling to a CATCH block

After completing this module, you will be able to:

    Describe transactions and the differences between batches and transactions.
    Describe batches and how they are handled by SQL Server.
    Create and manage transactions with transaction control language statements.
    Use SET XACT_ABORT to define SQL Server's handling of transactions outside TRY / CATCH blocks.
    Describe the effects of isolation levels on transactions.
 

Course Directory [training on all levels]

Upcoming Classes