Articles

External Article

A Rolling Filtered Index in SQL Server

I recently resolved an issue where a query pulling data from the last 30 days would time out due to the table’s size and the lack of a supporting index. Creating a supporting index is possible, but not ideal; it will be very large and may not be useful for most queries and use cases. I wonder how I could implement a filtered index that follows time and is always limited to the last n days.

2025-09-10

External Article

How to Script Dimensions with data build tool (dbt) Macros

In this article, we’ll revisit the dimension models we created. We wrote the entire SQL statement for the dimension by hand, and the dimensions themselves were very rudimentary; they lacked a surrogate key and there were no audit columns (such as insert date and update date). We’ll show you how we can expand the dimensions using Jinja, but also how we can minimize development effort by baking reusable patterns into the Jinja code.

2025-09-03

Blogs

What DevOps Look Like in Microsoft Fabric

By

Microsoft Fabric (not to be confused with the more general term “fabric” in DevOps)...

T-SQL Tuesday #192: What career risks have you taken?

By

I’m honored to be hosting T-SQL Tuesday — edition #192. For those who may...

AI: Blog a Day – Day 3: LLM Models – Open Source vs Closed Source

By

Continuing from Day 2 , we learned introduction on Generative AI and Agentic AI,...

Read the latest Blogs

Forums

Azure Synapse database refresh

By Sreevathsa Mandli

Hi Team, I am trying to refresh the Azure Synapse Dedicated pool from production...

Ready to launch your next big game?

By maryelbert

Looking for a creative and experienced mobile game development company that brings your game...

how to write this query?

By water490

hi everyone I am not sure how to write the query that will produce...

Visit the forum

Question of the Day

Fun with JSON I

I have some data in a table:

CREATE TABLE #test_data
(
    id INT PRIMARY KEY,
    name VARCHAR(100),
    birth_date DATE
);

-- Step 2: Insert rows  
INSERT INTO #test_data
VALUES
(1, 'Olivia', '2025-01-05'),
(2, 'Emma', '2025-03-02'),
(3, 'Liam', '2025-11-15'),
(4, 'Noah', '2025-12-22');
If I run this query, how many rows are returned?
SELECT *
FROM OPENJSON(
     (
         SELECT t.* FROM #test_data AS t FOR JSON PATH
     )
             ) t;

See possible answers