Query a JSON array in SQL

sql 中存的json 为数组:

[{"Level":1,"Memo":"新用户"},{"Level":2,"Memo":"真实用户"}]

sql 怎么取?JSON_VALUE 需要'$[0].Level' 不灵活

解决方案:

SELECT *
FROM Setting c
CROSS APPLY OPENJSON(c.Value) WITH (Lv INT '$.Level',Memo NVARCHAR(100) '$.Memo') AS jsonValues
WHERE c.Name='Levels' and jsonValues.Lv = 2;

PS:OPENJSON 不能正常使用 执行下面代码

ALTER DATABASE DatabaseName SET COMPATIBILITY_LEVEL = 130

原文地址:https://www.cnblogs.com/huangyoum/p/10477496.html