从SQL查询生成图表的工具

从SQL查询生成图表的工具,sql,oracle,diagram,toad,erd,Sql,Oracle,Diagram,Toad,Erd,我有一个针对Oracle的复杂SQL查询,我想将其可视化到一个图表中,以便同事能够理解。我试过了,但还是被噎住了 有人有更好的建议吗?我更喜欢internet上的web应用程序,如果不是windows桌面应用程序的话 with logs as ( select l.job_id, l.subjob, sum(l.verwerkt) verwerkt, sum(l.errors) errors, max(l.datu

我有一个针对Oracle的复杂SQL查询,我想将其可视化到一个图表中,以便同事能够理解。我试过了,但还是被噎住了

有人有更好的建议吗?我更喜欢internet上的web应用程序,如果不是windows桌面应用程序的话

with 
  logs as (
    select 
      l.job_id, 
      l.subjob,
      sum(l.verwerkt) verwerkt, 
      sum(l.errors) errors, 
      max(l.datum) laatst
     from 
      dinf_monitor_logs l, 
      dinf_monitor_jobs j 
     where 
      l.datum>sysdate-j.dagen
      and j.job_id=l.job_id(+)
     group by 
      l.job_id, 
      l.subjob
  ),
  alllogs as (
    select job_id, subjob, max(datum) laatst from dinf_monitor_logs group by job_id, subjob
  )
  select row_number() over(order by alllogs.job_id, alllogs.subjob) r,
    alllogs.job_id,
    alljobs.naam,
    alllogs.subjob,
    logs.verwerkt, 
    logs.errors, 
    alllogs.laatst datum,
    alljobs.wikilink,
    alljobs.loglink,
    alljobs.contact,
    case 
      when alllogs.laatst is null then 1
      when round(sysdate-(alllogs.laatst+alljobs.dagen))<0 then 0
      else round(sysdate-(alllogs.laatst+alljobs.dagen))
    end overtijd,
    case 
      when logs.errors-alljobs.max_errors>0 then 5
      when logs.verwerkt-alljobs.min_verwerkt<0 then 7
      when round(sysdate-(alllogs.laatst+alljobs.dagen))>0 then 3
      else 11
    end status
  from logs, alllogs, (select job_id, naam, wikilink, loglink, contact, dagen, min_verwerkt, max_errors from dinf_monitor_jobs) alljobs
  where 
    logs.job_id(+)=alllogs.job_id 
    and logs.subjob(+)=alllogs.subjob
    and alllogs.job_id=alljobs.job_id
  order by alllogs.job_id, alllogs.subjob

每个子查询都是数据集,我只需要对查询的功能做一个简单的英语陈述,然后描述数据集以及它们如何以实体关系的方式相互关联,然后展示查询如何满足简单的英语陈述。您可以使用各种工具表示E-R。

您可以使用Oracle SQL Developer的“查询生成器”选项卡

示例查询的结果将是:


我发现了如何在Toad中实现它,我更喜欢它,而不是sqldeveloper。 打开编辑器窗口,粘贴sql,在编辑器窗口中右键单击并选择Send to queryviewer 我上面的sql太复杂,无法使用这种技术,但很高兴知道我将来可以在更普通的查询中使用它。
指向Sergio。

您尝试过Oracle SQL Developer的“查询生成器”选项卡吗?没有,有些同事使用SQL Developer,但我使用Toad,这只是构建还是可以从查询中反向工程图表?大多数ERD程序只是构建一个数据库结构。如果您创建查询并将选项卡更改为“查询生成器”,工具将创建图表。谢谢,但您首先必须在developer中创建查询,您不能从上面的sql开始?请参阅查询的输出:似乎需要大量工作,您知道,一张图上写着一千多个字,也更喜欢可重复使用的东西