在SQL Server中,可以使用內置的JSON函數來處理JSON字符串。
JSON_VALUE
函數、JSON_QUERY
函數或OPENJSON
函數來解析JSON字符串并獲取其中的值或對象。JSON_VALUE(json_expression, path)
函數:從JSON字符串中提取指定路徑的值。JSON_QUERY(json_expression, path)
函數:從JSON字符串中提取指定路徑的對象或數組。OPENJSON(json_expression)
函數:將JSON字符串解析為表格形式,以便于進一步處理。示例:
DECLARE @json NVARCHAR(MAX) = '{"name": "John", "age": 30, "city": "New York"}';
SELECT JSON_VALUE(@json, '$.name') AS Name,
JSON_VALUE(@json, '$.age') AS Age,
JSON_VALUE(@json, '$.city') AS City;
SELECT JSON_QUERY(@json, '$.name') AS Name,
JSON_QUERY(@json, '$.age') AS Age,
JSON_QUERY(@json, '$.city') AS City;
SELECT *
FROM OPENJSON(@json);
JSON_QUERY
函數來構建JSON對象或數組,并使用FOR JSON
子句將查詢結果轉換為JSON字符串。示例:
SELECT JSON_QUERY('{"name": "John", "age": 30, "city": "New York"}') AS JsonString;
SELECT JSON_QUERY((SELECT Name, Age, City FROM Persons FOR JSON AUTO)) AS JsonString;
以上是SQL Server中處理JSON字符串的基本方法,根據具體需求可以使用不同的JSON函數來處理和操作JSON數據。