Phil Grayson

I’m Phil Grayson, founder of Aireforge, where we build tools to make database management more efficient, secure, and performance-driven. I’ve been working in the SQL Server space for over 25 years, with a focus on performance tuning, security, and observability. Currently, I’m gearing up to launch dbOptics, a platform designed to simplify database observability and performance tuning across complex estates, as well as Guard, a database firewall set to release next year.

I’m passionate about helping data professionals and organizations get the most out of their database environments. Aireforge has been active in the SQL community since 2016, sponsoring events like Data Relay and SQLBits, and we continue to contribute through knowledge sharing and community-driven events.
  • Interests: SQL Server performance tuning, index management, database security, automation of database tasks, observability and monitoring, knowledge sharing, cloud services, Azure infrastructure, motorcycle touring.

Blogs

Overcoming Challenges: Navigating Common Pitfalls in FinOps Adoption

By

Working in DevOps, I’ve seen FinOps do amazing things for cloud cost control, but...

Why your data still can’t answer a simple question 

By

Every organization I talk to has the same problem dressed up in different clothes....

T-SQL Tuesday #197 Invitation – An impactful session or two from a conference

By

I am delighted to host this month’s T-SQL Tuesday invitation. If you are new...

Read the latest Blogs

Forums

The day-to-day pressures of a DBA team, and how we can work smarter with automation and AI

By Terry Jago

Comments posted to this topic are about the item The day-to-day pressures of a...

Daily aggregation of Azure Blob Storage by tier (created/tier-change/deleted)

By BOR15K

Hello all, I’m looking for advice on how to derive a daily snapshot table...

SQL 2017 to SQL 2025. Good to Go ?

By homebrew01

We need to replace our Windows server running SQL 2017. Any reason not to...

Visit the forum

Question of the Day

Using OPENJSON

I have some data in a table that looks like this:

BeerID BeerName    brewer               beerdescription
1      Becks       Interbrew            Beck's is a German-style pilsner beer 
2      Fat Tire    New Belgium          Toasty malt, gentle sweetness, flash of fresh hop bitterness.
3      Mac n Jacks Mac & Jack's Brewery This beer erupts with a floral, hoppy taste
4      Alaskan Amber Alaskan Brewing     Alaskan Brewing Amber Ale is an "alt" style beer
8      Kirin       Kirin Brewing         Kirin Ichiban is a Lager-type beer
If I run this, what is returned?
select t1.[key]
    from openjson((select t.* FROM Beer AS t for json path)) t1

See possible answers