Articles

External Article

In-Memory OLTP: Row Visibility in SQL Server’s MVCC

SQL Server's In-memory OLTP is fast, due to its multi-valued concurrency control (MVCC). MVCC avoids the need for locks by arranging for each user connected to the database to see a snapshot of the rows of the tables at a point in time, No changes made by the user will be seen by other users of the database until the changes have been completed and committed. It is conceptually simple but does the user always see the correct version of a row under all circumstances? Shel Burkow explains.

2016-10-17

3,150 reads

External Article

DELETE Operation in SQL Server HEAPs

You should stick to using tables in SQL Server, rather than heaps that have no clustered index, unless you have well-considered reasons to choose heaps. However, there are uses for heaps in special circumstances, and it is useful to know what these uses are, and when you should avoid heaps. Uwe Ricken explains, and demonstrates why you'd be unwise to use heaps rather than tables when the data is liable to change.

2016-10-14

3,646 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