presto解析jsonArr转多行
一、假数据解析
SELECT r1.col.dataSourceId, r1.col.database, r1.col.dataTable FROM (SELECT explode(r.json) AS col FROM (
SELECT from_json('[{"dataSourceId":4,"database":"db_statistics","dataTable":"compass_sdk_page"}]','array<struct<dataSourceId:string,database:string,dataTable:string>>') AS json
) r) AS r1;

二、查表解析
select task_id,out_tab.task_config.dataSourceId, out_tab.task_config.database, out_tab.task_config.dataTable from(
select
task_id,
explode(from_json(temp_col,'array<struct<dataSourceId:string,database:string,dataTable:string>>')) as task_config
from (
select
task_id,
get_json_object(config_content,'$.sourceTableConfig.multipleSourceList') as temp_col
from iceberg_catalog.data_lake_ods.ods_bdg_test where task_id=30007
)inn_tab
)out_tab

presto解析jsonArr转多行的更多相关文章
- python解析传入的命令行参数 argv
python解析命令行参数主要有三种方法:sys.argv.argparse解析.getopt解析 方法一:sys.argv —— 命令行执行:python test_命令行传参.py 1,2,3 1 ...
- getopts解析shell脚本命令行参数
getopts命令格式 getopts optstring name [arg] optstring为所有可匹配选项组成的字符串,每个字母代表一个选项.如果字母后有冒号:,表明该选项需要选择参数.比如 ...
- 使用ACE_Get_Opt解析命令行
当我们用C++开发一些C++控制台小工具时,会需要一些用户输入的参数来决定程序如何工作和执行,而用户输入参数的方式大部分都是采用命令行参数的方式. 比如上一篇文章 玩转Windows服务系列--命令行 ...
- QT解析命令行(QCommandLineOption和QCommandLineParser类)
Qt从5.2版开始提供了两个类QCommandLineOption和QCommandLineParser来解析应用的命令行参数. 一.命令行写法命令行:"-abc" 在QComma ...
- 3.QT中QCommandLineParser和QCommandLineOption解析命令行参数
1 新建项目 main.cpp #include <QCoreApplication> #include <QCommandLineParser> #include & ...
- python实现命令行解析的argparse的使用
参考https://docs.python.org/3.6/library/argparse.html argparse模块使编写用户友好的命令行界面变得很容易.程序定义了它需要什么参数,argpar ...
- Python模块: 命令行解析optionparser
Python 有两个内建的模块用于处理命令行参数:一个是 getopt,<Deep in python>一书中也有提到,只能简单处理 命令行参数:另一个是 optparse,它功能强大,而 ...
- 【C++】cmdline——轻量级的C++命令行解析库
1.说明 cmdline是一个轻量级的c++命令行参数解析工具,全部源码只有一个cmdline.h头文件. 2.代码 20171210_命令行进行解析.cpp // 20171210_命令行进行解析. ...
- C#/.NET 使用 CommandLineParser 来标准化地解析命令行
CommandLineParser 是一款用于解析命令行参数的 NuGet 包.你只需要关注你的业务,而命令行解析只需要极少量的配置代码. 本文将介绍如何使用 CommandLineParser 高效 ...
- Qt:解析命令行
Qt从5.2版開始提供了两个类QCommandLineOption和QCommandLineParser来解析应用的命令行參数. 一.命令行写法 命令行:"-abc" 在QComm ...
随机推荐
- php之编译安装
1. 安装所需环境 yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng ...
- S2P销讯通-主数据对于客户关系管理系统的重要性
由于业务发展,各大企业的业务系统经历了从无到有,从简单到复杂,从而形成了一个又一个的业务系统,比如OA.HR.CRM.ERP等等. 主数据在客户关系管理系统(CRM)中扮演着至关重要的角色.主数据是指 ...
- 使用SELECT…INTO OUTFILE导出文本文件
MySQL数据库导出数据时,允许使用包含导出定义的SELECT语句进行数据的导出操作.该文件被创建到服务器主机上,因此必须拥有文件写入权限(FILE权限)才能使用此语法."SELECT.. ...
- 以下哪一项是对CSMA/CA和CSMA/CD LAN控制通用的CSMA方法的适当描述?
A. 检测载波信号并控制数据传输. B. 获得具有传输权的消息(令牌)的终端传输数据. C. 如果在数据传输过程中发生冲突,立即重新发送. D. 即使在使用传输线时也可以传输数据. = ...
- nvm切换版本报exec: “cmd”: executable file not found in %PATH% 问题
由于也是第一次用,出了个这报错懵了 搜了下也没个准确的解决办法(也可能是问题太简单),有的说可能是cmd变量没配好,检查了一遍没问题 后来想到报的是cmd,而cmd存储位置在 C:\Windows\S ...
- uniapp+django 新手学习步骤记录 (1)
第一次学习uniapp和django,找了一个入门教程遇到坑,记录一下. 1.Django项目和uni-app项目的创建及项目文件讲解_慕容星言的博客-CSDN博客 (1)注意同时安装了python2 ...
- Esxi缩小硬盘大小的办法
进虚拟机,把要缩减硬盘的那个系统,磁盘管理,收缩卷收缩了.然后关机. 本例:调整800G到350G. Esxi打开ssh,进去. cd /vmfs/volumes// datastorename,完 ...
- CentOS7.8安装k8s
1, 安装 docker / kubelet # 在 master 节点和 worker 节点都要执行 \# 最后一个参数 1.20.6 用于指定 kubenetes 版本,支持所有 1.20.x 版 ...
- Flutter shared_preferrence报错
Flutter shared_preferrence报错 在main函数中runApp之前添加**WidgetsFlutterBinding.ensureInitialized();确保初始化成功 v ...
- Uninstall or delete MariaDB completely for re-installation
I am new to this forum so pse forgive me if I am asking a question which already has been answered. ...