news 2026/6/10 16:10:24

ZGLanguage 解析SQL数据血缘 之 提取select语句中的源表名

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ZGLanguage 解析SQL数据血缘 之 提取select语句中的源表名

# 假设存在 SQL代码 如下:

SELECT CL.OBJECTNO , AL.PAYDATE FROM NYBDP.O_SS_CL_LOAN_ACCT_STATIS CL inner JOIN O_CWWS_ACCT_LOAN AL ON 1=1 LEFT out JOIN NYBDP.O_CWWS_BUSINESS_DUEBILL BD ON 1=1 LEFT JOIN O_CWWS_BUSINESS_CONTRACT BC ON 1=1 ;

# 若要提取以上SQL代码中的源表名,可配置语法标注"源表"如下:

__DEF_CASE_SENSITIVE__ N __DEF_PATH__ __SELECT__ 1 : x1 @ | select N : x2 @ | __OTH_COL__ e : x3 @ | , 1 : x4 @ | from : x5 @ | __TABLE_NAME__ N : x6 @ | __JOIN_TABLE__ __DEF_SUB_PATH__ __OTH_COL__ 1 : x1 | __NAME__ : x2 | . : x3 | __NAME__ __DEF_SUB_PATH__ __TABLE_NAME__ 1 : 源表 @ | __NAME__ + : schema @ | __NAME__ : pp @ | . : 源表_2 @ | __NAME__ 1 : as @ CAN_SKIP | as : 源表别名 @ CAN_SKIP | __NAME__ __DEF_SUB_PATH__ __JOIN_TABLE__ 1 : x0 @ | join + : x1 @ | inner : x2 @ | join + : x5 @ | left : x6 @ CAN_SKIP | out : x7 @ | join + : x12 @ | right : x13 @ CAN_SKIP | out : x14 @ | join + : x17 @ | full : x18 @ CAN_SKIP | out : x19 @ | join + : x20 @ | , 1 : x21 @ | __TABLE_NAME__ : x22 @ | on : x23 @ | 1=1 __DEF_STR__ __NAME__ <1,100> [1,1]ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_?? [0,100]ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_?? [NO] select inner left join on from where group order by having union all with as table

# 根据语法配置解析结果(导入Excel)如下所示:

# 由以上解析结果红色部分所示,根据 标注 列进行“源表”筛选,可以得到select语句中的4张源表名。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 9:53:46

DenseNet-121 深度解析

1. 核心思想&#xff1a;密集连接 (Dense Connectivity)DenseNet 的革命性之处在于它提出了密集连接的概念&#xff0c;这与之前的网络&#xff08;如 ResNet&#xff09;有本质区别。与 ResNet 的对比ResNet (残差网络): 引入了残差连接 (Residual Connection)。它通过一个 “…

作者头像 李华
网站建设 2026/6/10 10:04:34

群活码制作及二维码生成场景解析

本文将重点介绍群活码的制作方法及其在不同二维码生成场景中的应用。如需创建微信群的长期有效二维码&#xff0c;步骤简单直接&#xff0c;适合每个人。通过对二维码的生成与管理&#xff0c;我们能有效避免因频繁更换二维码带来的不便。 接下来&#xff0c;将分析二维码在活…

作者头像 李华
网站建设 2026/6/10 9:58:28

力扣406 根据身高重建队列 java实现

406.根据身高重建队列假设有打乱顺序的一群人站成一个队列&#xff0c;数组 people 表示队列中一些人的属性&#xff08;不一定按顺序&#xff09;。每个 people[i] [hi, ki] 表示第 i 个人的身高为 hi &#xff0c;前面 正好 有 ki 个身高大于或等于 hi 的人。请你重新构造并…

作者头像 李华
网站建设 2026/6/10 10:00:04

nim游戏原理

参考nim游戏 尼姆博弈 是一个两人博弈。两名玩家轮流从若干堆物品中拿取一定数量的物品&#xff0c;每次操作需&#xff1a; 选择某一堆。从该堆中至少拿 1 个&#xff0c;至多拿完全部物品&#xff08;不能不拿&#xff09;。 游戏可以设置“拿到最后一个物品获胜”或“拿到…

作者头像 李华
网站建设 2026/6/10 11:21:53

一个 Bug,把 MIT 工程师从谷歌逼醒

当“金手铐”遇上高度内卷的内部技术栈在硅谷&#xff0c;离开谷歌&#xff0c;常被视为一种“反理性选择”。 稳定的高薪、极致的福利、全球顶级的工程团队——这些条件叠加在一起&#xff0c;构成了一副闪闪发光的“金手铐”。但对一位毕业于 麻省理工学院、曾在 谷歌 搜索与…

作者头像 李华