T-SQL Fundamentals 2016


Learn T-SQL 2016 the right way. Understand the logic behind the language and know not only the how but also the why.  This course is an updated version of the TSQL Fundamentals course.

Course Objectives

  • Understand the logic behind T-SQL and thinking in terms of sets
  • Write T-SQL code to create tables and define data integrity
  • Write queries against single and multiple tables
  • Write T-SQL statements that modify data
  • Get familiar with T-SQL programmable objects

”Excellent. I never thought what else I need to learn more in T-SQL.I never realized there is such a deeper world of SQL.”

WHEN and WHERE is this course running?

What does this course cover?

Developed in-house by SolidQ, this T-SQL Fundamentals course is intended for T-SQL developers, DBAs, data scientists and SQL Server power users who work with SQL Server and need to write queries and develop code using Transact-SQL—SQL Server’s dialect of the standard ANSI-SQL language. The course covers querying, including retrieving and modifying data, and also provides an overview of programmable objects supported by SQL Server.

This course is intended both for people who just started working with SQL Server, as well as those with some experience. If you are self-taught, and gained your knowledge “by the seat of your pants,” this course can fill the gaps in your knowledge and teach you how to think correctly in SQL terms. This course doesn’t get into performance discussions and advanced problems* rather focuses on the logical aspects of T-SQL. Note though that it is not merely a step-by-step course. It doesn’t just focus on syntactical elements of T-SQL, rather explains the logic behind the language and its elements.

There are many aspects of SQL that are very different than other programming languages. This course will help students adopt the right state of mind and get a true understanding of the language elements. Students will learn how to think in terms of sets and follow good SQL programming practices.

The course is not version specific; it does, however, cover language elements that were introduced in recent versions of SQL Server. Throughout the course the instructor will specify the version in which the elements were introduced.
The topics covered in the course include: Background to T-SQL Querying and Programming; Single-Table Queries; Joins; Subqueries; Table Expressions; Set Operators; Window Functions, Pivot, Unpivot and Grouping Sets; Data Modification; Temporal Tables; Transactions; Overview of Programmable Objects.

To complement the learning experience, students will be provided with exercises that will enable them to practice what they’ve learned.

* Note: If you are a very experienced T-SQL practitioner and are looking for an Advanced T-SQL course that dives deeply into the complexities of T-SQL Querying and Programming including coverage of query and index tuning, please see the course Advanced T-SQL Querying Programming and Tuning for SQL Server .


Who is this course designed for?

  • T-SQL Programmers and DBAs, Data Scientists, Architects, Analysts and Power Users
  • Those who need to write or review code in SQL Server 2012, 2014, 2016 and Windows Azure SQL Database


Providing first-hand experience, meet the author

T-SQL Fundamentals course was developed by Itzik Ben-Gan, a mentor and one of the founders of SolidQ, author of several books about T-SQL, a columnist in SQL Server Pro magazine, and a regular speaker in SQL Server related events.


Pre-requisites: What do you need to know?

  • Familiarity with basic relational database concepts and SQL

All our courses can be offered as a private delivery and tailored for your team's specific needs

Course outline

Module 01: Background to T-SQL Querying and Programming
  • Theoretical Background
  • SQL Server’s Architecture
  • SQL Server Management Studio
  • Creating Tables
  • Defining Data Integrity
  • Sample Database
Module 02: Single-Table Queries
  • Elements of SELECT Statement
  • Predicates and Operators
  • CASE Expressions
  • NULLs
  • All-At-Once Operations
  • Working with Character Data
  • Working with Date and Time Data
  • Querying Metadata


Module 03: Joins
  • Joins
  • Cross Joins
  • Inner Joins
  • Further Join Examples
  • Outer Joins


Module 04: Subqueries
  • Self-Contained Subqueries
  • Correlated Subqueries
  • Scalar Subqueries
  • Multi-Valued Subqueries
  • Beyond the Fundamentals of Subqueries


Module 05: Table Expressions
  • Derived Tables
  • Common Table Expressions
  • Views
  • Inline Table-Valued Functions


Module 06: Set Operators
  • Set Operators, Described
  • Precedence
  • Circumventing Unsupported Logical Phases


Module 07: Beyond the Fundamentals of Querying
  • Window Functions
  • Pivoting Data
  • Unpivoting Data
  • Grouping Sets


Module 08: Data Modification
  • Inserting Data
  • Deleting Data
  • Updating Data
  • Merging Data
  • Modifying Data through Table Expressions
  • Modifications with TOP / OFFSET-FETCH


Module 09: Temporal Tables
  • Temporal Tables, Described
  • Creating Tables
  • Modifying Tables
  • Querying Temporal Tables

LAB 09

Module 10: Transactions and Concurrency
  • Transactions
  • Locks and Blocking
  • Isolation Levels
  • Deadlocks

LAB 10

Module 11: Programmable Objects
  • Variables
  • Batches
  • Flow Elements
  • Cursors
  • Temporary Tables
  • Dynamic SQL
  • Routines
  • Error Handling

WHEN and WHERE is this course running next?

This course may be scheduled in more than one region. Please check availability in your country.