我有一个长度未知的 json 列
[
{
"customer_id": 90,
"order_id": abc1,
"subscription_id": ewuq3,
},
{
"customer_id": 90,
"order_id": abc1,
"subscription_id": dsvs7,
},
{
"customer_id": 90,
"order_id": abc1,
"subscription_id": lnf4,
}
]
json 列的长度未知。客户可以购买 10 个订阅,甚至 1 个。 目前数据处于订单级别。因此每个订单号 1 行。 我想要订阅级别的数据。 Redshift中有没有自动执行此操作的功能?我知道 json_extract_path_text。 但这仅适用于 1 个订阅。
您想要取消 json 中数组的嵌套。为此,您需要将 json 转换为“超级”数据类型(如果它还不是超级)。 AWS 有一个关于取消嵌套的好文档,位于 https://docs.aws.amazon.com/redshift/latest/dg/query-super.html
我之前在这里写过这个答案 - UNNEST Redshift 中的超级数据
如果您需要帮助来实现此目的,请联系我们。