我有一个SQL Select查询,表之间有很多连接,我想知道哪种图可以用图形方式表示它,以便可视化表及其类型之间的连接(区分INNER和LEFT)?
我做了这个简单的架构来表示我的查询,但我正在寻找一种已知且更好的图表类型:
答案 0 :(得分:0)
我相信你要找的是Entity Relationship Diagram的变体,其中不同的行尾表示关系类型。在构建数据库时,我相信这种模型最常见且易于理解。
答案 1 :(得分:0)
您可以在Enitity Relationship Diagram中使用乌鸦脚符号来指定关系(一对多,一对一)以及可选性(enitityA只有一个enitityB或enitityA有0或1个enitityB)。在您的情况下,选项可能代表您需要执行的联接类型。为什么需要在ERD中指定连接类型?
答案 2 :(得分:0)
我很困惑为什么这还不存在,甚至更困惑为什么更多的开发人员没有大声疾呼。不可否认,需要动态创建sql查询的可视表示形式。如果不使用诸如“ AsecRemFortsKilnNumAttr”之类的名称来混淆其业务表示,那么试图理解一条300行的sql程序就已经足够困难了。
如果过程中有数百个具有类似名称但略有不同的列,例如“ AsecRemAgsKilnNumAttr”和“ AsecRemFortsKilnNumV”,则该任务是不可能的。
无论如何,这是我发现的一对:-
https://sqldep.com/sql-parser/
https://sourceforge.net/projects/revj/
最后一个包含一个Python实用程序,如果您知道如何的话,可以用来改进和扩展它。
除了Informatica Developer 10之外,唯一可以满足您需求的其他工具是Informatica Developer 10,它使您可以从导入的SQL查询创建映射。