首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Java对象转换为JSON对象

将Java对象转换为JSON对象
EN

Stack Overflow用户
提问于 2021-11-10 13:15:11
回答 1查看 52关注 0票数 1

我们正在使用Airbyte将MongoDB数据同步到雪花中。由于某些原因,我们的JSON列表被同步为Java对象。

我正在尝试将数据转换为JSON格式,这样我就可以处理这些属性。

成本列中的Java对象行的示例:

"[Document{{currency=USD, value=815.00}}, Document{{currency=EUR, value=671.00}}, Document{{currency=GBP, value=579.00}}, Document{{currency=DKK, value=4992.00}}, Document{{currency=SEK, value=6760.00}}]"

我希望将行转换为以下格式

代码语言:javascript
复制
[{
    "currency": "USD",
    "value": 815.00
}, {
    "currency": "EUR",
    "value": 671.00
}, {
    "currency": "GBP",
    "value": 579.00
}, {
    "currency": "DKK",
    "value": 4992.00
}, {
    "currency": "SEK",
    "value": 6760.00
}]

我怎样才能在Snowflake中做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2021-11-10 15:54:18

您可以使用正则表达式,但这不是最优雅的方式:

代码语言:javascript
复制
set term='[Document{{currency=USD, value=815.00}}, Document{{currency=EUR, value=671.00}}, Document{{currency=GBP, value=579.00}}, Document{{currency=DKK, value=4992.00}}, Document{{currency=SEK, value=6760.00}}]';
select regexp_replace(regexp_replace(regexp_replace($term, 'Document',''), '}}', '}'), '{{', '{');

我得到了:

代码语言:javascript
复制
[{currency=USD, value=815.00}, {currency=EUR, value=671.00}, {currency=GBP, value=579.00}, {currency=DKK, value=4992.00}, {currency=SEK, value=6760.00}]

这可以进一步扩展,将currency替换为"currency"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69913932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档