假设我有以下JSON:
{
"CURRENCY_CODE": "INR",
"CURRENCY_NAME": "Indian Rupee",
"ID_CURRENCY": 8,
"ISO_CODE": 4217
}
我想在Snowflake中查询它,所以我得到以下输出:
键 | |
---|---|
货币代码 | INR |
CURRENCY_NAME | 印度卢比 |
ID_CURRENCY | 8 |
ISO_CODE | 4217 |
可以将参数直接传递到FLATTEN:
SELECT f.*
FROM TABLE(FLATTEN(INPUT => PARSE_JSON('<here goes json>'))) f;
您可以在FROM子句中使用LATERAL FLATTEN()
来实现这一点。
例如:
SELECT fdt.KEY, fdt.VALUE
FROM VALUES('{
"CURRENCY_CODE": "INR",
"CURRENCY_NAME": "Indian Rupee",
"ID_CURRENCY": 8,
"ISO_CODE": 4217
}') dt
,lateral flatten( input => parse_json(column1) ) fdt;
KEY | VALUE |
---|---|
货币代码 | INR |
CURRENCY_NAME | 印度卢比 |
ID_CURRENCY | 8 |
ISO_CODE | 4217 |