SQLServerCentral Editorial

Throwing Iron at the Cloud and AI

As organizations move to the cloud, the once essential role of the Database Administrator (DBA) as the guardian of system optimization, has been overshadowed, often viewed as a bottleneck to innovation. Yet, as technology evolves, the one thing I know is history repeats itself, and optimization skills are once again emerging as a critical necessity. […]

SQLServerCentral Article

JSON in Microsoft SQL Server: A Comprehensive Guide

Introduction JSON (JavaScript Object Notation) has become a popular data format for storing and exchanging information. Microsoft SQL Server, starting from version 2016, introduced built-in support for JSON, allowing developers to work with JSON data more efficiently within the relational database environment. This article will explore how to store, retrieve, and manipulate JSON data in […]

SQLServerCentral Article

Creating a Linked Server in Amazon RDS for SQL Server: A Step-by-Step Guide

Linked servers in Amazon RDS for SQL Server allow seamless connectivity to remote databases for distributed queries and data integration. In this article, I guide you through the step-by-step process of creating a linked server using SQL commands, from setting up authentication to testing the connection. Learn best practices, advanced configurations, and essential considerations, including why you can't use SSMS for linked server setup in RDS. This professional guide is tailored for experienced database administrators looking to optimize cross-server operations.

Technical Article

A Practical Guide to Using Azure Key Vault in Enterprise Deployments

Key vaults define security boundaries for stored secrets. It allows you to securely store service or application credentials like passwords and access keys as secrets. All secrets in your key vault are encrypted with a software key. When you use Key Vault, you no longer need to store security information in your applications. Not having to store security information in applications eliminates the need to make this information part of the code.

Blogs

Cost Visibility: Tracking and Analysing Your Cloud Spend

By

One of the biggest challenges I’ve faced in cloud operations is maintaining clear visibility...

Whiling away an afternoon, thinking

By

I come to Heathrow often. Today is likely somewhere close to 60 trips to...

Black Box vs. Gray Box vs. White Box Testing

By

If your organization is spending money, then meaningful results are a must. Pen testing...

Read the latest Blogs

Forums

Fun with JSON II

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Fun with JSON II

Changing Data Types

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Changing Data Types

Answering Questions On Dropped Columns

By Cláudio Silva

Comments posted to this topic are about the item Answering Questions On Dropped Columns

Visit the forum

Question of the Day

Fun with JSON II

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