Stairways

To keep up to date with all the technologies in SQL Server, the DBA or developer who wants to stay ahead is faced with the struggle of constant learning. How do you keep up while avoiding information overload, unnecessary detours and dead-ends?

The SQL Server Stairways is our solution to this problem. Designed to smooth out even the steepest learning curve, each Stairway is a SQL tutorial series focused on a single topic and is arranged into no more than a dozen easily-navigable tutorials that we call 'steps'. Each step is the length of a typical magazine tutorial, and emphasizes practical, hands-on learning, with just enough background theory to help you understand the topic at a deeper level.

Using straightforward language and avoiding jargon and marketing babble, each Stairway tutorial series is designed to take you from zero knowledge of a particular SQL Server topic to a level of practical understanding that will allow you to start using that feature in a production environment. The learning gradient is steady and manageable, but also brisk. You won't be wasting time.

Happy climbing!

Stairway to Azure SQL Hyperscale

Stairway to Azure SQL Hyperscale

Azure SQL Hyperscale is a scale of the Azure SQL Database intended to scale to very large levels, up to 100TB for a database. This option sits next to the General Purpose and Business Critical  tiers. It is described in the What is Hyperscale? document from Microsoft. This series is intended to teach you about […]

You rated this post out of 5. Change rating

2025-08-25 (first published: )

15 reads

Stairway to Database containers

Stairway to Database Containers

Containers are a lightweight way of building applications that run on a host. Similar to virtualization, the container is a virtual OS rather than a full machine. This stairway will walk you through the basis of containers using Docker for Windows and SQL Server inside of a container.

You rated this post out of 5. Change rating

2024-07-28 (first published: )

7,962 reads

Stairway to AlwaysOn

Stairway to Always On

AlwaysOn is a complex set of technologies that is often mis-understood. In this Stairway you will learn about the AlwaysOn technologies, how they fit into the High Availability stack, and how to make good use of them.

5 (2)

You rated this post out of 5. Change rating

2024-07-23 (first published: )

18,311 reads

Stairway to Server Management Objects (SMO)

This stairway series tries to help the reader become comfortable with server management objects (SMO). These objects are a programmatic way of accessing SQL Server functions and objects through an API from .NET. This series will help you learn the basics with practical applications for your work.

5 (1)

You rated this post out of 5. Change rating

2024-01-20 (first published: )

1,306 reads

Stairway to DAX and Power BI

Stairway to DAX and Power BI

Data Analysis Expressions (DAX) can be used in formulas or expressions to calculate and return information from data already in our Power BI models. This Stairway series serves as a progressive introduction to DAX within the context of Power BI, examining the functions, operators and values involved, and examining their operation in practice examples. As a part of introducing DAX functions and overall capabilities, the Levels of the series will also offer a wealth of practical exposure to Power BI features as a part of putting DAX to work in our data models and visualizations.

4 (6)

You rated this post out of 5. Change rating

2024-01-16 (first published: )

19,343 reads

Technical Article

Stairway to SQL Server Automated Database Testing

Automated testing is a way to ensure you can repeatedly examine your code as you make changes by running a series of tests. Since these are automated, you have the ability to execute all tests with one programmatic call rather than hoping a developer runs all tests. This also allows the effort of writing tests […]

You rated this post out of 5. Change rating

2023-10-15 (first published: )

948 reads

Blogs

Troubleshooting TempDB Log Full Errors When SSMS Won’t Connect

By

Have you ever received the dreaded error from SQL Server that the TempDB log...

Accelerating AI with Confidence: Why Microsoft Purview is Key to Responsible Innovation

By

Artificial intelligence is no longer a distant concept. It is here, embedded in the...

The Mystery of SQL Server 2025’s New Tricks – Scooby Dooing Episode 5

By

Every Scooby-Doo mystery starts with a haunted house, a strange villain, and a trail...

Read the latest Blogs

Forums

The Tightly Linked View

By Steve Jones - SSC Editor

Comments posted to this topic are about the item The Tightly Linked View

Build a Test Lab of SQL Server 2025 on Windows Server 2025 using Hyper-V Virtual Machines

By Aleksey Vitsko

Comments posted to this topic are about the item Build a Test Lab of...

Remembering Phil Factor

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Remembering Phil Factor

Visit the forum

Question of the Day

The Tightly Linked View

I try to run this code on SQL Server 2022. All the objects exist in the database.

CREATE OR ALTER VIEW OrderShipping
AS
SELECT cl.CityNameID,
       cl.CityName,
       o.OrderID,
       o.Customer,
       o.OrderDate,
       o.CustomerID,
       o.cityId
 FROM dbo.CityList AS cl
 INNER JOIN dbo.[Order] AS o ON o.cityId = cl.CityNameID
GO
CREATE OR ALTER FUNCTION GetShipCityForOrder
(
    @OrderID INT
)
RETURNS VARCHAR(50)
WITH SCHEMABINDING
AS
BEGIN
    DECLARE @city VARCHAR(50);
    SELECT @city = os.CityName
    FROM dbo.OrderShipping AS os
    WHERE os.OrderID = @OrderID;
    RETURN @city;
END;
go
What is the result?

See possible answers