在 redshift sql 中解析格式不正确的 json 列

Parsing ill formatted json column in redshift sql

提问人:trathi01 提问时间:11/16/2023 更新时间:11/16/2023 访问量:31

问:

我想从 redshift 表中查询 json 数组列(数据格式 super)。问题是这些值包含大量反斜杠,这会导致在解析过程中出现错误(例如,请参阅下文)。有人可以提出一些可能适合您的解决方案吗?我想从数组中提取所有值(在下面的示例中,所有名称、状态等) 示例值 -

“[{”name“:”check_missing_inputs“,”status“:”已执行“,”parameters“:{”inputs_dict“:”{\“date_of_birth\”: \“1900-01-01\”}“},”result“:”{\“any_missing_input\”: false, \“return_message\”: \“一切都很好\”}“,”execution_time“:0}, {“name”:“age”,“status”:“已执行”,“parameters”:{“date_of_birth”:“1900-01-01”},“result”:“53”,“execution_time”:0}]”

谢谢!

SQL 数组 JSON Amazon-Redshift

评论

0赞 NickW 11/16/2023
替换反斜杠以使其有效 json?
0赞 trathi01 11/16/2023
@NickW在结果键中可能存在合法值,其中有我不想替换的 \。所以这样有点棘手。
0赞 NickW 11/16/2023
那么\“是一个可能的有效字符组合吗?如果是,您打算如何确定它在哪里有效,在哪里无效?如果不是,则将 \“ 替换为”
0赞 Adrian Maxwell 11/16/2023
您可以编写一个 python UDF 来取消转义 JSON,然后在将其与 json_parse 一起使用后继续吗?
0赞 Adrian Maxwell 11/16/2023
你试过使用JSON_EXTRACT_PATH_TEXT吗?

答: 暂无答案