我有這樣的表:
| 價值 |
|---|
| {“日期”:“2022-10-31”,“Delta”:5,“評論”:null} |
| {“日期”:“2022-11-01”,“Delta”:5,“評論”:null} |
我怎樣才能得到這樣的表:
| 日期 | 三角洲 | 評論 |
|---|---|---|
| 2022-10-31 | 5 | 無效的 |
| 2022-11-01 | 5 | 無效的 |
資料:
DECLARE @r TABLE (
value VARCHAR(255)
)
INSERT INTO @r VALUES
(N'{"Date":"2022-10-31","Delta":5,"Comment":null}'),
(N'{"Date":"2022-11-01","Delta":5,"Comment":null}');
uj5u.com熱心網友回復:
嘗試這樣的事情:
SELECT j.*
FROM @r
CROSS APPLY OPENJSON(value)
WITH
(
Date DATE,
Delta INT,
Comment VARCHAR(50)
) j;
應該給你想要的輸出。
uj5u.com熱心網友回復:
只是演示使用的另一種選擇JSON_VALUE()
Select Date =JSON_VALUE(value,'$.Date') -- could wrap in a try_convert(date,...)
,Delta =JSON_VALUE(value,'$.Delta') -- could wrap in a try_convert(int,...)
,Comment=JSON_VALUE(value,'$.Comment')
From @r
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/528850.html
