Window Functions - Row Mode Performance
Produced: 13/03/2019 19:11:00
My last post was on the wonders of Window Functions in Batch mode (which is awesome – if you’ve not read the post then go… now…). This post will focus on any of us who don’t happen to have the latest and greatest (at time of writing) and aren’t able to force batch mode through our queries. So, what’s the big deal? Window Functions are just Window Functions? Yes?

Window Functions in Batch Mode
Produced: 04/03/2019 09:04:00
We all love Window Functions. Where would we be without ROW_NUMBER and RANK? But these can sometimes be performance killers as they loop through our data performing sorts and scans as they go. Now, in SQL Server 2016+, there is a Batch Mode version of Window Functions and the improvement is huge. So let’s have a look with a couple of quick examples:

Adaptive Query Joins
Produced: 24/02/2019 17:45:00
This is a new feature added into SQL Server 2017 to try and alleviate the pain of an age old problem… parameter sniffing. For anyone who doesn’t know what this is, I have outlined the problem with a couple of examples in the previous post, therefore have a quick read through… but if you’re already aware of the problem then read on…

Parameter Sniffing in SQL Server
Produced: 16/02/2019 13:17:00
This is something I was sure I had written about before, but it turns out I haven’t. I’m also aware that there’s a lot of information out there on the topic, but I wanted to post about Adaptive Query Joins and this is a significant precursor, which is why I’m putting this blog out first.

Temporal Tables – Editing Historical Data
Produced: 08/02/2019 10:19:00
We all know that Temporal Tables don’t allow us to edit data in the Historical table. This is for all manner of incredibly sensible reasons (auditing etc) and therefore shouldn’t be breached.

Temporal Tables – Notes and Gotchas
Produced: 31/01/2019 13:37:00
Here we’ll go through a few of the quirks of Temporal Tables, both things that I’ve been asked most frequently, and also some of the known considerations when looking to use these in your environments.

Querying Temporal Tables in SQL Server
Produced: 22/01/2019 06:22:00
Again, following on from my last post, we’ll be looking at Temporal Tables a little more. Last time we simply created one and entered a row of data whereas this time we’ll be looking to query them a little more and see what syntax is required to do so.

Creating a Temporal Table in SQL Server
Produced: 15/01/2019 06:06:00
Continuing from the previous post, which was a brief introduction to Temporal Tables, we’ll now move on to creating one and seeing what special syntax is involved in that process. To be honest this tends to look a little confusing when you first see it, but it very quickly makes sense and you can start using it right away.

What Are Temporal Tables in SQL Server?
Produced: 07/01/2019 13:00:00
Temporal Tables (also known as system-versioned temporal tables) are essentially tables which return data based on a specific point in time. These are ideal for use with slowly changing dimensions in data warehouses, or simply if you wish to easily and simply keep a queryable history of your data for audit or reporting purposes.