如何解决如何实现 OPENJSON 将 JSON 代码作为列内的文本如何在 AZURE SQL Dataware House 中的表列上使用 OPENJSON?
例如:原始数据
npm run production
想要在折扣上应用 OPENJSON 并获得以下输出:
| ORDER# | SUBORDER# | DISCOUNTS |
|------- |-----------| -------------------------------|
| 1 | 1-123 | '[{ discount:"1",amount:"1"}]' |
| 1 | 1-123 | '[{ discount:"2",amount:"2"}]' |
解决方法
我已经更新了我的答案,请在插入语句后添加 ;
。
- 创建表格并插入两行:
create table dbo.test(
ORDER# varchar(255),SUBORDER# varchar(255),DISCOUNTS varchar(255)
);
insert into dbo.test values ('1','1-123','[{ "discount":"1","amount":"1"}]');
insert into dbo.test values ('1','[{ "discount":"2","amount":"2"}]');
- 然后我们就可以使用下面的sql查询数据了。
select ORDER#,SUBORDER#,A.*
from dbo.test t
CROSS APPLY OPENJSON(t.DISCOUNTS)
WITH (
discount varchar(255),amount varchar(255)
) A;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。