Hive 如何在AWS中从Athena获取结果格式JSON?
我想从AWS中的Athena获取结果值格式JSON 当我从雅典娜中选择时,结果格式如下Hive 如何在AWS中从Athena获取结果格式JSON?,hive,presto,amazon-athena,Hive,Presto,Amazon Athena,我想从AWS中的Athena获取结果值格式JSON 当我从雅典娜中选择时,结果格式如下 {test.value={report_1=test, report_2=normal, report_3=hard}} 有没有办法在不替换“=”到“:”的情况下获得JSON格式的结果 列格式为 map<string,map<string,string>> map 如果您的输入格式是json(即整行都是json),那么您可以创建一个新表,该表以您指定的任何格式保存athen
{test.value={report_1=test, report_2=normal, report_3=hard}}
有没有办法在不替换“=”到“:”的情况下获得JSON格式的结果
列格式为
map<string,map<string,string>>
map
如果您的输入格式是json(即整行都是json),那么您可以创建一个新表,该表以您指定的任何格式保存athena结果,其中包含了几个可能的选项,如拼花、json、orc等。这最终会将查询的所有athena结果以所需的格式存储在s3存储桶中 希望这有帮助
以下是供参考的文档:非常感谢。我还有一个问题。当数据与字符串和映射数据混合时,我可以将字符串数据也转换为json格式吗?不客气。如果你有一个特定的问题,那么请使用一个新的帖子。P.s.通过在答案左侧标记
V
符号,即可接受答案。另一个按钮是向上投票,好的。我得到了它。非常感谢。
select mycol
from mytable
;
+--------------------------------------------------------------+
| mycol |
+--------------------------------------------------------------+
| {test.value={report_3=hard, report_2=normal, report_1=test}} |
+--------------------------------------------------------------+
select cast (mycol as json) as json
from mytable
;
+--------------------------------------------------------------------------+
| json |
+--------------------------------------------------------------------------+
| {"test.value":{"report_1":"test","report_2":"normal","report_3":"hard"}} |
+--------------------------------------------------------------------------+