Dynamic data masking hides values at query time, and the masking functions decide what a reader still sees. This post tests default, email, partial, random and datetime on SQL Server 2025 and shows what each one returns. It also covers adding and dropping a mask on an existing column.
MySQL – Identifying and Optimizing the Busiest Tables
Let us learn Identifying and Optimizing the Busiest Tables in MySQL. MySQL provides an easy way to identify the busiest tables using the performance_schema.
SQL SERVER – The Flight Connection Puzzle
Today we are going to see another such puzzle – The Flight Connection Puzzle. This blog post is going to be really fun blog post.
SQL SERVER – The Two Doors, Two Guards Puzzle
I came across a puzzle about “The Two Doors, Two Guards,” popularly known as the “Two Doors Riddle” or the “Heaven and Hell Riddle”.
Running Distinct Counts: Working Around COUNT(DISTINCT) OVER
Your report wants unique customers so far, and SQL Server refuses COUNT(DISTINCT) over a window. Flag each first appearance and add up the flags instead.
12 Years, 50 Courses: A Tale of Enthusiasm, Determination, and Resilience
12 Years, 50 Courses looks back on how one SQL Server video course grew into more than fifty, the setbacks along the way, and the people who made it possible.
Schema-Level Permissions: Granting on a Schema, Not Each Object
Apply schema-level permissions to a database role, include future tables automatically, separate internal data, and review grants.
Given-When-Then for Database Tests
Use Given-When-Then for readable database tests with known input, explicit THROW checks, and transaction rollback after each case.
SQL SERVER – STRING_AGG Function to Concatenate Strings
We were able to improve the performance of the query by using STRING_AGG Function to Concatenate Strings. Let us learn.
SQL SERVER 2022 – GENERATE_SERIES Function
Recognizing an opportunity for optimization, we replaced the original series generation logic in the stored procedure with the GENERATE_SERIES function.










