Aaron Bertrand

Grouped concatenation

I show the safest and most efficient ways to perform grouped concatenation in SQL Server.

New trace flag to fix table variable performance

Following a recent update, I take a first look at a new performance enhancement and trace flag (2453) aimed at improving cardinality estimates for table variables and table-valued parameters.

Dude, who owns that #temp table?

I show how you can use Extended Events to track temp table creation and identify which session created which #temp table.

Best approaches for grouped running totals

I follow up on a running totals post with an article describing different ways to achieve the same types of results for more complex grouping and aggregation.

No, you can't trust IDENT_CURRENT

I demonstrate how IDENT_CURRENT cannot be relied upon for reporting your new IDENTITY value, even under SERIALIZABLE.

Justifying the new Mac Pro

I explained how I justified purchasing a new Mac Pro, and show that it is very tough to order a comparable PC at similar price points.

Performance surprises: DATEDIFF

I investigate a case where two different methods of deriving an inline constant can lead to very different cardinality estimates.

Another argument for stored procedures

I talk about a subtle way that ad hoc queries can interfere with SQL Server performance by taking up more space in the plan cache than they really need.

Schema Switch-A-Roo: Part 2

I go into a little more detail about what happens to metadata when you use schema transfers behind the scenes.