Poderoso analisador de SQL pode ajudar a analisar as centenas de consultas ad-hoc e procedimentos armazenados automaticamente, e da árvore de análise de consulta gerada pelo SQL Parser, você pode facilmente encontrar o relacionamento das variáveis tabela / colunas.
Aqui está uma amostra:
SELECT a.ASSMT_NO,
b.LINK_PARAM,
c.EXPL AS LINK_PG,
(SELECT count()
FROM GRAASPST t
WHERE t.ASSMT_NO = a.ASSMT_NO
AND t.ROLE != '02') AS PSN_CNT,
(SELECT count()
FROM GRAASPST t
WHERE t.ASSMT_NO = a.ASSMT_NO
AND t.ROLE != '02'
AND ASSMT_FIN_YN = 'Y') AS PSN_FIN_CNT,
(SELECT Avg(assmt_pts)
FROM GRAASSMT t
WHERE t.ASSMT_NO = a.ASSMT_NO
AND t.ASSMT_TGT_SEQ_NO = a.ASSMT_TGT_SEQ_NO) AS ASSMT_PTS_AVG,
a.ASSMT_RES,
a.ASSMT_RPT_SUB_TITLE
FROM GRAASTAT a
JOIN GRAASRET b
ON b.DELIB_REQ_NO = a.DELIB_REQ_NO
JOIN GRTCODDT c
ON c.DIV_CD = 'GR013'
AND c.CD = b.DELIB_SLCT
JOIN CMUSERMT d
ON d.USERID = a.REGID
WHERE a.ASSMT_NO = :ASSMT_NO
ORDER BY a.ASSMT_TGT_SEQ_NO
Depois de analisar essa consulta, você pode obter algo assim:
JoinTable1 JoinColumn1 JoinTable2 JoinColumn2
GRAASRET DELIB_REQ_NO GRAASTAT DELIB_REQ_NO
GRTCODDT CD GRAASRET DELIB_SLCT
CMUSERMT USERID GRAASTAT REGID
GRAASPST ASSMT_NO GRAASTAT ASSMT_NO
GRAASSMT ASSMT_NO GRAASTAT ASSMT_NO
GRAASSMT ASSMT_TGT_SEQ_NO GRAASTAT ASSMT_TGT_SEQ_NO
Você pode verificar esta demo para informações detalhadas.