Articles

SQLServerCentral Article

Understanding CRUD Operations on Tables with B-tree Indexes, Page-splits, and Fragmentation

Introduction Every DML transaction reads the data before it makes any changes. Not only during a SELECT query, but when you run any DML statement, insert, update, or delete, SQL Server first fetches a bunch of pages into the buffer pool locating the desired rows and changes them while synchronously writing to the transaction log […]

(6)

You rated this post out of 5. Change rating

2021-05-10

8,400 reads

SQLServerCentral Article

Optimize Your SQL by Reformulating the Spec

As SQL developers, we tend to think of performance tuning in terms of crafting the best table indices, avoiding scalar and table valued functions, and analyzing query plans (among other things). But sometimes going back to the spec and applying some properties of elementary math can be the best way to begin to improve performance of SQL queries which implement mathematical formulas. This article is a case study of how I used this technique to optimize my SQL implementation of the Inverse Simpson Index.

(3)

You rated this post out of 5. Change rating

2021-05-07 (first published: )

5,397 reads

Blogs

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...

Did You Really Name That Default?

By

Ten years (and a couple jobs) ago, I wrote about naming default constraints to...

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...

Using OPENJSON

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Using OPENJSON

Data Modeling with dbt for Visual Code: The Fabric Modern Data Platform

By John Miner

Comments posted to this topic are about the item Data Modeling with dbt for...

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