The one question about PowerShell that trips up almost everyone is about when and how to quote strings. Because PowerShell replaces the old command shell, it has to be able to work the way that it did with string parameters, but it also has to behave like a .NET scripting language to replace VBA. In this article, Michael Sorens explains the how and when of PowerShell quoting.
When cardinality estimates are incorrect, the parallel threads doing the query work are given uneven amounts of work to do. This problem can lead to a seeming explosion in CXPACKET waits occurring and is commonly called skewed parallelism; Paul Randal explains how to check for it.
Denzil Ribeiro looks at how SQL Server 2016's new Merge functionality in INDEX REORGANIZE simplifies Columnstore index maintenance significantly.
This week Steve Jones looks at the idea of combining some NoSQL concepts inside of SQL Server.
Are you a do-it-all DBA, or do you specialize in one aspect of database work?
One man’s meat is often another man’s poison. In this editorial Tony Davis looks at why a migrations-based approach to database version control might not always be best practice.
This Friday Steve Jones looks at the topic of defaults and whether you use the model database to adjust yours.
By Brian Kelley
I will be leading an in-person Certified Information Systems Auditor (CISA) exam prep class...
EightKB is back again for 2026! The biggest online SQL Server internals conference is...
By HeyMo0sh
Working in DevOps long enough teaches you two universal truths: That’s exactly why I...
Hi all, I just started using VS Code to work with DB projects. I...
Comments posted to this topic are about the item Fun with JSON II
Comments posted to this topic are about the item Changing Data Types
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 t1.[key] AS row,
t2.*
FROM OPENJSON(
(
SELECT t.* FROM #test_data AS t FOR JSON PATH
)
) t1
CROSS APPLY OPENJSON(t1.value) t2; See possible answers