【发布时间】:2021-04-04 10:43:51
【问题描述】:
我有一个由
创建的 json 表CREATE TABLE `normaldata_source`(
`column1` int,
`column2` string,
`column3` struct<column4:string>)
样本数据是:
{
"column1": 9,
"column2": "Z",
"column3": {
"column4": "Y"
}
}
如果我这样做
SELECT column3
FROM normaldata_source
它将产生一个结果{column4=y}。但是,我希望它是 json 格式 {"column4": "y"}
这可能吗?
*编辑这个查询给了我以下结果:
SELECT CAST(column3 AS JSON) as column3_json
FROM normaldata_source
【问题讨论】:
-
有一些解决方法(例如,使用格式函数构建字符串),github.com/trinodb/trino/pull/3613 正在进行对带有字段名称的 json 的支持。
-
感谢您的信息。不幸的是,我的真实对象有很多字段并且是嵌套的,因此使用格式函数构建字符串将非常繁琐。我希望有一个更简单的方法。链接是 trino 的,但这和 presto 是一样的吗?