页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

--------------------------------------------------------------------------------------------------------------------------------

所以针对系统中的3类查询,能否在血统分析中找到表。总结如下:

...

可视化查询

可视化查询由于都是从左侧拖拽的字段,所以血统分析中一定能找到表。除非存在以下情况:products表的所有字段和表名都是文字形式的,所以在血统分析中是看不到products这个表的
Image Removed

...

 

...

原理解释

其实我们可以尝试将鼠标移动到查询中的那些“对象”上面

Image Removed

可以看到,这些对象,实际上系统是可以从这些对象上面获取到它对应的表的信息的,所以可以在血统分析中显示出来。

 

而原生sql查询意味着“原生”,送到数据库中的sql就是客户写在查询中的,在系统中不能添加任何的处理。所以即使是从左侧拖过去的表和字段,也会变成文字的形式(参数、用户属性、函数除外)。

 

------------------------------------------------------------------------------------------------------

那么,原生sql,或者自己手写的sql查询,有没有其他方法能够在血统分析中找到表呢?

这个其实很难做到。如果要找到sql中所使用的表,那么必须把这些查询的sql取出来,然后对其进行解析,找到里面用到了什么表,这个本身有难度。而且除了表名以外,还会有不同的schema,另外不同数据库的语法还不完全一样,因此实现的可能性比较小。