SQL Server Tutorials

At MSSQLTips, we are committed to deliver a valuable technical tip on SQL Server every day of the week. We plan to continue our commitment and have expanded our educational opportunities to the SQL Server community with tutorials. Our intention with the tutorials is to provide a step-by-step progression on a single topic such as backups or the SELECT statement. We think some topics naturally start at A and end at Z. As such, each tutorial serves as a building block for the next one. So pick your topic below, start with the first lesson and navigate to the rest by either clicking on the links on the left of the tutorial pages or on the 'next' icon (above right and directly below the lesson). We plan on adding new tutorials on a regular basis, so be sure to visit this page frequently to expand your knowledge. If you have any feedback on the tutorials or would like to suggest a tutorial, please let us know.

Business Intelligence Tutorials

Azure Data Factory

Azure Data Factory is a managed, serverless data integration service hosted in the Microsoft Azure cloud. It allows you to visually build data pipelines to integrate data from over more than 90 built-in connectors. In short, it's an ETL/ELT tool built for the cloud.

Biml Language Tutorial

Biml or Business Intelligence Markup Language is an open-source XML dialect to generate Integration Services (SSIS) packages. Take a look at this Biml tutorial to learn how you can use Biml to generate SSIS packages.

DAX in SQL Server Tutorial and Example

In this tutorial we are going to learn to create DAX formulas to get desired information from a Tabular Model ranging from getting a simple calculation to solving a slightly complex analytical problem. We are going to run DAX formulas against a deployed tabular model to find out different type of facts based on different requirements. This tutorial is primarily focused on the technique to create simple DAX queries and then moving forward to create slightly complex DAX queries step by step.

Machine Learning with SQL Server 2017 and R Tutorial

In this tutorial, we will learn the basics of machine learning where we will learn the necessary data science to examine data in relevance to machine learning model development. We will be using R in SQL Server 2017 to apply machine learning related techniques and analysis. In case you are new to R, you can get quickly get up to speed by following the R Tutorial.

Moving Data Around in Azure

In this video tutorial series we will look at how to move data around in Azure. We will look at various tools (Databricks, Logic Apps, Azure Data Factory, SSIS, etc.) and options (Azure Automation, Azure Functions, etc.) to move data in the cloud in each of the different videos in this tutorial.

My First SQL Server Business Intelligence Project Tutorial

In a BI project, data is the currency and analytics is the merchandise. Without having the right type, amount and shape of data, one cannot get the right kind of analytics. In this tutorial, we will look at different types of data sources as well as relational data modeling. Data makes many hops from one layer of the solution to another in any BI solution architecture. During this data movement from source to destination, the shape of the data keeps transforming. This facilitation of data movement and transformation along the way is typically known as Extract, Transform and Load (ETL). We will look at typical ETL needs and the associated topics like data staging and master data management concepts.

Snowflake Tutorial

In this tutorial we will go over the basics of Snowflake, introducing the product and features which makes it stand out against its competitors. We look at how to load and query data as well as how to use Power BI to create reports using the Snowflake data.

SQL Server 2016 Analysis Services Tutorial

SQL Server Analysis Services (SSAS) is the technology from the Microsoft Business Intelligence stack to develop Online Analytical Processing (OLAP) solutions. Over the years SSAS has evolved and has emerged as a leader in the area of analytical solutions. SSAS generally uses a data warehouse as a data source and contains data objects like cubes, dimensions, measures, aggregations hosted in a SSAS database. SSAS also offers options to select a variety of server modes like Multi-dimensional, Tabular and PowerPivot. Multi-dimensional expressions (MDX) and Data Analysis Expressions (DAX) are the two primary query and expression languages which are used to query SSAS database objects.

SQL Server 2017 and Python Tutorial

This tutorial is intended to help experienced T-SQL Developers, DBAs, Data Analysts and Data Science enthusiasts to start using Python language with T-SQL. This enables data science and analytics tasks closest to the actual data, without the need to follow a traditional BI methodology of transporting and transforming data across repositories. The tutorial is structured in five lessons, with each lesson focused on explaining corresponding key points.

SQL Server Analysis Services (SSAS) Administration Tutorial

Administration of a SSAS instance / database is similar to SQL Server Database Engine management in some ways. There are some administration aspects which are also unique to SSAS like processing dimensions, facts and cubes. Any IT environment employing SSAS as its OLAP technology typically involves the following administrative tasks. These tasks are an integral part of any SSAS solution that Developers as well as DBAs need to perform in production and/or non-production environments depending on their role on the team.

SQL Server Analysis Services (SSAS) Tutorial

SQL Server Analysis Services (SSAS) is the technology from the Microsoft Business Intelligence stack, to develop Online Analytical Processing (OLAP) solutions. In simple terms, you can use SSAS to create cubes using data from data marts / data warehouse for deeper and faster data analysis. In this tutorial we will step through a number of topics that you need to understand in order to successfully create a basic cube.

SQL Server Data Mining Tutorial

SQL Server Analysis Services contains a variety of data mining capabilities which can be used for data mining purposes like prediction and forecasting. This tutorial aims to explain the process of using these capabilities to design a data mining model that can be used for prediction.

SQL Server DAX Tutorial

Data Analysis Expressions (DAX) is perceived to be a query language for Tabular SSAS, Power BI Desktop and PowerPivot. Technically, DAX is a library of functions and operators that can be used to develop a formula that can be used with the Vertipaq Engine. The similarity of DAX formulas with Excel formulas helps developers to familiarize themselves with the syntax of DAX comparatively faster.

SQL Server Integration Services (SSIS) 2016 Tutorial

Learn the A to Z process to build an SSIS Package in SQL Server 2016 with Visual Studio 2015. This step by step tutorial will provide you with the history of the technology and tools, Control Flow and Data Flow logic, deployment, performance optimizations and more.

SQL Server Integration Services (SSIS) Tutorial

SQL Server Integration Services (SSIS) is a tool that we use to perform ETL operations; i.e. extract, transform and load data. In this tutorial we will step through a number of topics that you need to understand in order to successfully build an SSIS package.

SQL Server Master Data Services Tutorial

Master data services (MDS) is the master data management solution from the Microsoft Business Intelligence (BI) technology stack. In this tutorial, we will start with the discussion of scenarios and considerations for MDM. Having understood the situations where MDM would be fit, we would understand the SQL Server Master Data Services (MDS) architecture that facilitates MDM. Before we proceed with a deep-dive into MDS, we need to understand the installation and configuration of MDS, followed by the fundamental concepts and terminology in MDS.

SQL Server R Tutorial

R is an open source programming language and environment. It is most widely-used for statistical computing, statistical graphics and data science, and is one of the most popular data science languages. R has gained a wide acceptance in the statistical computing, predictive analytics and machine learning professional community. R consists of huge number of libraries for machine learning, natural language processing, domain specific data manipulation for bioinformatics finance, statistical graphics, parallel computing and more.

SQL Server Report Builder 3.0 Tutorial

Report Builder is Microsoft's report authoring tool for business users. It has a simple and intuitive user interface that is similar to Microsoft Office. This tutorial will cover what you need to know to get started authoring reports with Report Builder 3.0, which was released with SQL Server 2008 R2.

SQL Server Reporting Services 2017 (SSRS) Tutorial

SQL Server Reporting Services or SSRS has been the go to reporting solution for SQL Server for almost a decade now. In many organizations, the ease of development, the web front end, and the security integration with Active Directory allowed SSRS to reign in as the reporting tool of choice. Still today it is a highly competent and able tool which has grown in feature availability and overall usage. For this tutorial we will focus on SQL Server 2017, but many of the features to be highlighted in this tutorial series apply to SQL Server 2016 and prior versions.

SQL Server Reporting Services Mobile Reporting Tutorial

SQL Server Reporting Services (SSRS) 2016 introduced Mobile Report Publisher which is intended to develop reports for mobile devices, tablets as well as desktops. It ships with 30 different visualizations that can be used to develop rich mobile dashboards. Built-in simulators can be used to test reports for different layouts, which eliminates the need for external third-party device specific simulators. Integration of the Power BI application with SSRS addresses the complexity of rendering reports on a variety of devices and platforms.

SQL Server Reporting Services Tutorial

SQL Server Reporting Services (SSRS) is a feature included in the SQL Server product. We use SSRS to design, develop, test, and deploy reports. In this tutorial we will step through a number of topics that you need to understand to successfully build and deployt a report.

Database Administration Tutorials

MySQL to SQL Server Conversion Tutorial

From time to time companies initiate projects to move from one database platform to another. Such migrations can involve switching between database engines such as SQL Server, MySQL, Oracle, Sybase, DB2, etc. In this tutorial we will explore the differences between MySQL and Microsoft SQL Server and the key components that you should be aware of when making that move.

SQL Server 101 Tutorial

Since its initial release in 1989, SQL Server has come a long way from its base functionality as an enterprise level database platform. While the core of SQL Server is still it's database engine, it is now so much more than just a relational database platform. We now have Analysis Services for online analytical processing, Reporting Services for developing reports, Integration Services for developing and running ETL programs as well as many other tools and services that work with and/or support these core components.

SQL Server Backup Tutorial

One of your last lines of defense for just about any system is to have a backup in place in case there is a need to recover some or all of your data. This is also true for SQL Server. In this tutorial we will discuss selecting the correct recovery models, what backup options are available, and how to create backups using T-SQL commands and SQL Server Management Studio.

SQL Server Date Functions

In this tutorial / reference guide we cover several SQL Server functions that are related to dates such as YEAR, MONTH, DATEPART, DATENAME, GETDATE and many more. Each function also includes several examples of the usage and the syntax.

SQL Server Extended Events Tutorial

Learn about SQL Server Extended Events including the architecture, numerous ways to setup new sessions, templates, editor tips, creating or altering sessions, associated DMVs and more.

SQL Server Graphical Query Plan Tutorial

When SQL Server executes a query it uses a query plan to determine how to access data and complete the query. SQL Server offers DBAs and developers the ability to see these query plans to assist in query optimization. Without query plans it would be difficult to figure out how to tune and optimize your queries. In this tutorial we explore how to read and use Graphical Execution Plans.

SQL Server Indexing Tutorial

Although there are many different things that can be done to improve the performance of a database system, creating indexes is the main tool in every DBA's toolbox that is used when we are trying to improve the performance of a query. This tutorial covers different types of SQL Server indexes and how they can be used.


The INFORMATION_SCHEMA views allow you to retrieve metadata about the objects within a database. These views can be found in the master database under Views / System Views and be called from any database in your SQL Server instance. In this tutorial we look at some of these INFORMATION_SCHEMA views and how they can be used.

SQL Server Management Studio Tutorial

SQL Server Management Studio, also known as SSMS, is an intuitive and multi-purpose database development and administration tool primarily used by SQL Professionals including SQL database developers, database administrators and infrastructure teams to manage SQL Server environments. This tutorial is focused on SQL Server Management Studio (SSMS) essentials alongside some short walkthroughs, links and tips for beginners to get started and for experienced professionals to learn something new about this highly productive tool.

SQL Server Master Database Tutorial

In this tutorial we cover many common questions about the master database. We look at what it is used for, location of database files, things you can and cannot do with the master database, maintenance and more.

SQL Server MSDB Database Tutorial

In this tutorial we will cover common questions related to the SQL Server msdb database. This is one of the standard system databases that are part of every SQL Server installation. This tutorial will give you a better idea of what the msdb database is used for, how to configure and maintain it and how to know what data and objects are stored in the msdb database.

SQL Server Performance Monitoring and Tuning Tutorial

In this tutorial we will cover some of the common issues with performance such as: deadlocks, blocking, missing and unused indexes, I/O bottlenecks, poor query plans, statistics, wait stats and fragmentation.

SQL Server Profiler Tutorial

SQL Profiler is a tool that provides a user interface to the SQL Trace utility which gathers events as they occur in your SQL Server instance. It gives you the ability to monitor everything that is going on inside your SQL Server instance. SQL Profiler provides you with an easy to use interface that allows you to select the events you want to monitor and where you want the output to be saved without having to know all the system stored procedures that are a part of SQL Trace. Without this tool you would have to go through the tedious process of manually setting up each event and filter with individual stored procedure calls for every event you want configured in your trace.

SQL Server Query Performance Guidelines Tutorial

In my years being a DBA Ive seen many (even made some myself) common mistakes when reviewing the SQL queries that run against the systems I maintain. With this experience Ive found that there are a some general guidelines that should be followed when writing queries and also when designing a database schema. In this tutorial we will take a look at a few different areas where these common mistakes are made and what can be done to fix them. These areas include: Query writing, Indexing and Schema design.

SQL Server Restore Tutorial

What good is a backup if you do not know to restore the backup. In this tutorial we will look at what restore options are available and which options are only accessible using T-SQL commands.

SQL Server String Functions

In this tutorial / reference guide we cover several SQL Server functions that are related to strings such as LEN, TRIM, SUBSTRING, LOWER, UPPER and many more. Each function also includes several examples of the usage and the syntax.

SQL Server Transaction Log Tutorial

In this tutorial, well go over some of the tasks you can do to manage the transaction log. The transaction log is very important to SQL Server and there are books alone that discuss how to manage the log so this will be an introduction tutorial to the transaction log.

SQL Server Triggers Tutorial

In this tutorial learn about SQL Server triggers and how these can be used to run additional code after an event occurs like inserting or changing data.

Windows Performance Monitor Tutorial

Performance Monitor (PerfMon) is a tool that comes built-in with Windows and allows you to look into the performance of your system and the applications that are running on it. It gives you a way to view data points that are associated with these applications and link them with the effect they have on your system. You can monitor data points both in real-time or collect them for analysis at a later time. Collection can also be scheduled for specific times of the day if there are only specific windows of time where you are experiencing an issue that you would like to monitor.

Development Tutorials

SQL Server Data Tools (SSDT) SQL Project Tutorial

SQL Server Data Tools (SSDT) SQL Projects offer excellent functionality to relieve developers of the mundane, manual tasks involved with maintaining databases. If your company licenses Visual Studio 2010 or 2012 Professional or greater, you have the ability to create Visual Studio SSDT SQL Projects. With these projects, you can add your database objects and the Visual Studio engine will figure out for you the dependencies between objects as well as the differences between schemas and apply them which can mitigate some of the errors that can occur when working with scripts manually.

SQL Server Database Development Tutorial

The goal of this tutorial is to help non-database and database professionals alike recognize sound development practices and to recognize practices and techniques that could lead to future technical headaches.

SQL Server Date Video Tutorial

In this video tutorial we will look at the different data types that SQL Server offers for storing date and times in a database table. We will compare the differences for the data types as well as do a storage test to determine the difference for each date data type.

SQL Server INSERT Tutorial

The INSERT command is used in SQL Server to add records to a table. It is a fairly straightforward command that can be used in ad-hoc code and stored procedures. In this tutorial we cover the following topics: simple INSERT statement, verify the INSERT commands, INSERT command with variables, INSERTs using stored procedures and more.

SQL Server Regex Tutorial

We can use regular expressions (sometimes called Regex) with T-SQL to tackle some common problems with data using this tool. In this tutorial, we will practice using regular expressions for filtering precise phrases involving alphabetic, numeric and special characters. By the end of this tutorial, we should have another skill for precisely filtering data if needed.

SQL Server SELECT Tutorial

If you are starting to learn the T-SQL language then starting with the SELECT statement makes a great deal of sense. The SELECT statement is the core command to access data in SQL Server.

SQL Server Stored Procedure Tutorial

A stored procedure is nothing more than prepared SQL code that you save so you can reuse the code over and over again. So if you think about a query that you write over and over again, instead of having to write that query each time you would save it as a stored procedure and then just call the stored procedure to execute the SQL code that you saved as part of the stored procedure. In this tutorial we cover how to create stored procedures in SQL Server.

SQL Server Window Functions Tutorial

In this tutorial, well give you an introduction to the concepts and usage of the window functions. Learning about these functions and applying them in your everyday programming will make you write better and more efficient T-SQL. After some introduction work, well go over some of the different categories of window functions like: row_number, over, lag, lead and more.

Visual Studio 2010 and SQL Server Tutorial

Visual Studio 2010 Database Projects offer excellent functionality to relieve developers of the mundane, manual tasks involved with maintaining databases. If your company licenses Visual Studio 2010 Professional or greater, you have the ability to create Visual Studio Database Projects.