JSON输入如下所示:
{
"reporting.unit": [ "F-1", "F-2", "F-3"],
"notional.lc": [ 100.1, 140.2, 150.3]
}
预期输出:
| reporting.unit | notional.lc |
| - ------| - ------|
| F-1战斗机|100.1页|
| F-2战斗机|140.2美元|
| F-3|一百五十点三|
注意,我有20多列和更多的元素
我试过:
DECLARE @json nvarchar(max);
SELECT @json = '{
"reporting.unit": [ "F-1", "F-2", "F-3"],
"notional.lc": [ 100.1, 140.2, 150.3]
}';
SELECT *
FROM OPENJSON (@json);
但结果是
| 钥匙|价值|类型|
| - ------| - ------| - ------|
| reporting.unit| ["F-1"、"F-2"、"F-3"]|四个|
| notional.lc | [项目100.1、140.2、150.3]|四个|
2条答案
按热度按时间5f0d552i1#
您可以将
OPENJSON
与多个JOIN
一起使用,以便使用数组键将列连接在一起,从而获得列/行格式的值。| reporting.unit | notional.lc |
| - ------| - ------|
| F-1战斗机|100.1页|
| F-2战斗机|140.2美元|
| F-3|一百五十点三|
6rvt4ljy2#
格里夫的答案已经+1了......这也是我的第一个想法。
然而,只是为了好玩,我想尝试一种替代品**,奇怪的是,它的批量成本较低,分别为40%和60%(下图)**
我还应该注意到,2016需要文字,而2017+可以是表达式
示例
结果
图像