背景
想通过 spark sql 查询 hive 表然后将相应的字段组装成 sql,类似于 json_object ,不过可惜的是 spark 3.1.x 并没有 json_object 函数,不过还好spark sql 有 to_json 函数
例子:
代码语言:javascript复制SELECT to_json(struct(bis_type,year,douban_rating))
from tv.test where date=20220620
limit 10
SELECT to_json(named_struct('bis_type',bis_type,'year',year,'douban_rating',douban_rating))
from tv.test where date=20220620
limit 10
结果,可以保留数据原类型。这是最重要的一个点,组装 json,得保留原字段的数据类型
代码语言:javascript复制{"bis_type":"xxx","year":2022,"douban_rating":8.3}