Как получить конкретное значение из объекта JSON

#sql #json #sql-server #database

Вопрос:

У меня есть таблица SQL Server Definition , которая содержит столбец со значением:

 { "Key": "comm-health:best-score", "RequiredScore": 70 }
 

Теперь значение RequiredScore в настоящее время составляет 70 здесь. Иногда это может быть 100 или 150. Теперь мне нужно значение RequiredScore только из столбца 70 в приведенном выше примере.

 { "Key":"comm-health:best-score", "RequiredScore": 150 } 
 

и 150 в этом примере.

Как я могу это получить?

Ответ №1:

Это легко сделать с помощью функции json_value() :

 select Json_Value(Definition, '$.RequiredScore')
from table
 

Ответ №2:

Используется JSON_VALUE для получения определенных значений столбцов.

 SELECT JSON_VALUE('{"RequiredScore":150}', '$.RequiredScore') AS 'RequiredScore';